确定范围 用 BETWEEN.AND和 NOT BETWEEN.AND 是逻辑运算符,可以用来查找属性值在或不在指定 范围内的元组,其中 BETWEEN后边指定范围的下限, AND后边指定范围的上限。 · BETWEEN. AND..的格式为: 列名|表达式[NOT] BETWEEN下限值AND上限值 如果列或表达式的值在[不在下限值和上限值范围 内,则结果为True,表明此记录符合查询条件
确定范围 • 用BETWEEN…AND和NOT BETWEEN…AND • 是逻辑运算符,可以用来查找属性值在或不在指定 范围内的元组,其中BETWEEN后边指定范围的下限, AND后边指定范围的上限。 • BETWEEN…AND…的格式为: 列名 | 表达式 [ NOT ] BETWEEN 下限值 AND 上限值 • 如果列或表达式的值在[不在]下限值和上限值范围 内,则结果为True,表明此记录符合查询条件
示例 例10.查询年龄在20~23岁之间的学生的姓名、所 在系和年龄。 SELECT Sname, Sdept, Sage FROM Student WHERE Sage BETWEEN20 AND 23 ·例11.查询年龄不在20~23之间的学生姓名、所在 系和年龄 SELECT Sname, Sdept, Sage FROM Student WHERE Sage NOT BETWEEn 20 AND 23
示例 • 例10.查询年龄在20~23岁之间的学生的姓名、所 在系和年龄。 SELECT Sname, Sdept, Sage FROM Student WHERE Sage BETWEEN20 AND23 • 例11.查询年龄不在20~23之间的学生姓名、所在 系和年龄。 SELECT Sname, Sdept, Sage FROM Student WHERE Sage NOT BETWEEN20 AND23
确定集合 使用IN运算符。 用来查找属性值属于指定集合的元组。 格式为: 列名[N0T]IN(常量1,常量2,…常量n) 当列中的值与IN中的某个常量值相等时,则结果为T rue,表明此记录为符合查询条件的记录; · NOT IN:当列中的值与某个常量值相同时,则结果 为 False,表明此记录为不符合查询条件的记录
确定集合 • 使用IN运算符。 • 用来查找属性值属于指定集合的元组。 • 格式为: 列名 [ NOT ] IN (常量1, 常量2, … 常量n) • 当列中的值与IN中的某个常量值相等时,则结果为T rue,表明此记录为符合查询条件的记录; • NOT IN:当列中的值与某个常量值相同时,则结果 为False,表明此记录为不符合查询条件的记录
示例 例12.查询信息系、数学系和计算机系学生的姓 名和性别。 SELECT Sname, Ssex FROM Student WHERE Sdept IN(信息系,"数学系',"计算机系) ·例13.查询既不是信息系、数学系,也不是计算 机系学生的姓名和性别。 SELECT Sname, Ssex FROM Student WHERE Sdept NOT IN(信息系,"数学系,计算机系)
示例 • 例12.查询信息系、数学系和计算机系学生的姓 名和性别。 SELECT Sname, Ssex FROM Student WHERE Sdept IN ('信息系', '数学系', '计算机系') • 例13.查询既不是信息系、数学系,也不是计算 机系学生的姓名和性别。 SELECT Sname, Ssex FROM Student WHERE Sdept NOT IN ('信息系', '数学系', '计算机系')
字符匹配 使用LIKE运算符 般形式为: 列名[NOT]LIKE<匹配串〉 匹配串中可包含如下四种通配符: :匹配任意一个字符; %:匹配0个或多个字符; []:匹配[]中的任意一个字符;对于连续字母 的匹配,例如匹配[abcd],可简写为[a-d] [^]:不匹配[]中的任意一个字符
字符匹配 • 使用LIKE运算符 • 一般形式为: 列名 [NOT ] LIKE <匹配串> • 匹配串中可包含如下四种通配符: • _:匹配任意一个字符; • %:匹配0个或多个字符; • [ ]:匹配[ ]中的任意一个字符;对于连续字母 的匹配,例如匹配[abcd],可简写为[a-d] • [ ^ ]:不匹配[ ]中的任意一个字符