要从表中选择特定行在 SELECT 语句之后使用 WHERE 子句指定要选择的行必须满足的条件从表中选择行的标准是搜索条件
搜索条件由一个或多个谓词组成谓词指定关于某一行是真或是假(或未知)的条件可使用下列基本谓词在 WHERE 子句中指定条件
在构造搜索条件时要注意只对数字数据类型执行算术运算并只在相容数据类型之间进行比较例如不能将字符串与数字进行比较
如果正在基于字符值来选择行则该值必须用单引号括起来(例如WHERE JOB = Clerk)并且输入的每个字符值必须与数据库中的完全一样如果数据值在数据库中是小写的而您用大写形式来输入它则将不选择行如果正在基于数字值来选择行则该值不得用引号括起来(例如WHERE DEPT = )
下列示例只从 STAFF 表中选择部门 的行
SELECT DEPT NAME JOB
FROM STAFF
WHERE DEPT =
此语句产生下列结果
下一示例使用 AND 来指定多个条件可以指定任意多个条件该示例从 STAFF 表中选择部门 中的 clerk
SELECT DEPT NAME JOB
FROM STAFF
WHERE JOB = Clerk
AND DEPT =
此语句产生下列结果
未在其中输入值且不支持缺省值的列中出现空值将值特别设置为空值的地方也可以出现空值空值只能在定义为支持空值的列中出现在表中定义和支持空值在创建表中讨论
使用谓词 IS NULL 和 IS NOT NULL 来检查空值
下列语句列出佣金未知的雇员
SELECT ID NAME
FROM STAFF
WHERE COMM IS NULL
此语句产生下列结果
值零与空值不相同下列语句选择表中佣金为零的每个人
SELECT ID NAME
FROM STAFF
WHERE COMM =
因为样本表中的 COMM 列中没有零值所以返回的结果集为空
下一个示例选择 STAFF 表中 YEARS 的值大于 的所有行
SELECT NAME SALARY YEARS
FROM STAFF
WHERE YEARS >
此语句产生下列结果
educitycn/img_///jpg >