数据库表一般包含大量的数据,很少需要检索表中所有行。通常只会根据特定操作或报告的需要提取表数据的子集。只检索所需数据需要指定搜索条件,搜索条件也称为过滤条件。
SELECT * FROM demo WHERE gender = '0'
分析:这条语句以gender列等于0作为过滤条件,只有gender等于0时,数据才会被检索出来。
操作符 | 说明 |
---|---|
= | 等于 |
<> | 不等于 |
!= | 不等于 |
< | 小于 |
<= | 小于等于 |
> | 大于 |
>= | 大于等于 |
BETWEEN | 在指定的两个值之间 |
注意:如果将值与串类型的列进行比较,则需要限定引号。用来与数值列进行比较的值不用引号。
SELECT * FROM demo WHERE id = 0
在创建表时,表设计人员可以指定其中的列是否可以不包含值。在一个列不包含值时,称其为包含空值NULL。它与字段包含0、空字符串或包含空格的字段不同。SELECT语句有一个特殊的WHERE子句,可用来检查具有NULL值的列。
SELECT * FROM demo WHERE nickname IS NULL
分析:词条语句会返回nickname列为NULL的行。相反,如果需要返回不为NULL的行,可以使用IS NOT NULL,具体可以自行测试。