SQL里的操作符-条件查询
(SQL里有很多操作符,它们都是用来满足SQL查询的,特别是为WHERE语句指定条件所使用,所以本章我们会结合WHERE语句的使用对SQL的操作符一一进行讲解)
1.比较操作
比比才知道
1、研究植物的学生—等于、不等
【知识点介绍】
比较符是基于两个值的比较,SQL里也一样,有等于、不等于、大于、小于等比较符。
我们先来了解下等于与不等:
等于与不等是SQL里常见的一组比较操作符号,相等在之前小节介绍WHERE语句的时候就有提到过了。
等于即 = 判断两个值是否相等,相等则返回TRUE,反之返回FALSE;
不等即 =! (或者 <>) 判断两个值是否不等,不等则返回TRUE,反之返回FALSE。
另外我们要知道一点:
当比较的数据是字符串类型的话,比较值是需要添加 '' 引号的,而数字类型可以直接进行比较。
【实例】
使用 = 符号,查询Student表中专业是Botany(植物学)的学生信息,并以学分进行排序。
SELECT * FROM Student
WHERE Major = 'Botany'
ORDER BY Credit;
字符串类型的数据记得要加 '' 号哦。
2、大于、小于
【知识点介绍】
大于、小于也是SQL里常用的比较操作符,同样是对值比较的一组操作,符号内容如下:
大于 >
小于 <
不大于 <=
不小于 >=
【实例】
查询学生学分ID不小于28的学生信息。
使用 >= 对学生表进行查询。
SELECT * FROM Student
WHERE Credit >= 28; -- Credit是整数类型的数字,所以不需要加引号
2.逻辑操作
逻辑思考
1、IS NULL
【知识点介绍】
逻辑符可以对各个列进行判断比较,根据判断的结果,返回TRUE或者FALSE,比如 IS NULL以及本节下文的其他逻辑符。
IS NULL作用在于可以用它来搜索列中的值是否为NULL。
【实例】
查询学生表中专业未填写的学生信息。
SELECT * FROM Student
WHERE Major IS NULL;
2、BETWEEN AND
【知识点介绍】
BETWEEN AND操作符是用来寻找两个指定值(最大值和最小值)之间的值,返回的结果是闭区间,即包含最大值和最小值。
我们可以用这个操作符对列表进行范围查询,比如某工资范围内的员工信息、某分数范围内的学生信息等。
【实例】
查询学分在20和24之间的学生信息。
SELECT * FROM Student
WHERE Credit BETWEEN 20 AND 24;
3、IN
【知识点介绍】
IN操作符会将列的值与一个列表的值进行比较,只要有列的值有一个与其匹配,则返回True。
【实例】
查询学分有28、29或30分的学生信息。
SELECT * FROM Student
WHERE Credit IN (28,29,30);
如果匹配列表是字符串类型的数据,是需要加引号的哦。
4、LIKE与通配符
【知识点介绍】
LIKE操作符是用来搜索查询列的指定模式,通配符则是用来替代表示一个或多个字符的。
在数据库中,LIKE与通配符是需要结合使用的,通配符是LIKE查询的指定模式的内容。
语法如下:
SELECT 列名 FROM 表名
WHERE 列名 LIKE 指定模式;
通配符的规则如下:
假如我们要查询学生表中姓名是H开头的学生信息,则可以这样使用WHERE子句:
WHERE SName LIKE 'H%';
【实例】
查询学生表中,姓名的长度为4,且最后一个字母是y的学生信息。
SELECT * FROM Student
WHERE SName LIKE '___y';
3个下划线指定了3个长度的字母。