SQL学习:二
过滤数据 - WHERE 子句
只检索所需数据需要指定搜索条件,所搜条件也称为过滤条件。
在SELECT语句中,数据根据WHERE子句中指定的搜索条件进行过滤。
WHRER子句在表名(FROM子句)之后给出。
语句示例
SELECT prod_name,prod_price FROM Products WHERE prod_price=3.49;
注意:
在同时使用WHERE子句和ORDER BY子句时,应该让ORDER BY位于WHERE之后,否则将会产生错误。
1.WHERE子句操作符
| 操作符 | 说明 |
|---|---|
| = | 等于 |
| <> | 不等于 |
| != | 不等于 |
| < | 小于 |
| <= | 小于等于 |
| !< | 不小于 |
| > | 大于 |
| >= | 大于等于 |
| !> | 不大于 |
| BETWEEN | 在指定的两个值之间 |
| IS NULL | 为NULL值 |
SELECT prod_name,prod_price FROM Products WHERE prod_price=3.49;
SELECT prod_name,prod_price FROM Products WHERE prod_price <=10;
SELECT vend_id,prod_name FROM Products WHERE vend_id <> 'DLL01';
SELECT vend_id,prod_name FROM Products WHERE vend_id != 'DLL01';
单引号用来限定字符串。如果将值与字符串类型的列进行比较,就需要限定引号。用来与数值列进行比较的值不用引号。
2.范围值检查
要检查某个范围的值,可以使用BETWEEN操作符。它需要两个值,即范围开始值和结束值。这两个值必须用AND关键字分隔。
SELECT prod_name,prod_price FROM Products WHERE prod_price BETWEEN 5 AND 10;
3.空值检查
在创建表时,表设计人员可以指定其中的列能否不包含值。在一个列不包含值时,称其包含空值NULL。确定值是否为NULL,不能简单地检查是否等于NULL。可以使用IS NULL子句检查。
SELECT prod_name FROM Products WHERE prod_price IS NULL;