在实际应用中,用户需要的并不是数据表中的所有记录,而是满足一定条件的记录,这就需要实现条件查询。ANSI/OSI SQL标准中使用WHERE子句实现条件查询。单条件查询是指WHERE子句后的条件只有一个,这种类型的条件查询是最为简单的。构成条件的谓词都是由条件表达式组成的,也即由表达式和一系列的运算符组成。
本实例对于基本表STU,查询并返回学号为“120002”的学生的姓名、性别、年龄和所在班级等信息,本实例执行完成后,SQL*Plus控制端输出如图1所示的结果。
图1 单条件查询
【实现代码】
【范例解析】
本实例使用了WHERE子句实现单条件查询,WHERE子句后的条件表达式由STU表的字段SNO,其值为120002和比较运算符“=”组成。单条件查询最值得注意的地方在于其条件语句的实现,由表达式和上述比较运算符组成的条件判断语句的格式繁多,基本的单条件查询语句格式如下:
一般情况下,条件表达式由基本表或视图的字段名、值和比较运算符组成。条件表达式中,比较运算符右边的值的数据类型是非常重要的。在本实例SQL语句中,“120002”是一个字符串数据类型,因此引用其需要加''号,如果是数值型数据类型,如年龄字段的值25,在引用的时候不需为其加''。
构成条件的谓词都是由条件表达式组成的,也即由表达式和一系列的运算符组成。最常见的条件运算符为比较运算符,常见比较运算符如表1所示。
表1 常见比较运算符
注意:单条件查询中返回输出的是满足WHERE子句条件的所有记录,即条件为真(TRUE),因此,如需返回表所有记录,条件可以是不为零的常数。