where字句常用的查询条件

「这是我参与11月更文挑战的第7天,活动详情查看:2021最后一次更文挑战

WHERE 子句

WHERE 子句用于规定选择的标准。

如需有条件地从表中选取数据,可将 WHERE 子句添加到 SELECT 语句。

语法

1
sql复制代码SELECT 列名称 FROM 表名称 WHERE 列 运算符 值

where字句常用的查询条件

查询条件 谓词
比较 = , > , < , >= , <= , (<> , !=不等于)
确定范围 BETWEEN AND(相当于闭集合[BETWEEN,AND]) , NOT BETWEEN AND(不属于闭集合[BETWEEN,AND]的范围)
确定集合 IN , NOT IN
字符匹配 LIKE NOT LIKE 通配符 % ,_
多重运算(逻 辑运算) AND, OR , NOT
空值 IS NULL , IS NOT NULL

使用实例及说明

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
sql复制代码-- where字句常用的查询条件及用法
-- 比较 = , > , < , >= , <= , (<> , !=不等于)
-- 用法 修改id为1的学生的姓名为狂铁
UPDATE `student` SET `name`='狂铁' WHERE id=1;
-- 修改年龄不等于3的学生的姓名
UPDATE `student` SET `name`='虞姬' WHERE age <>3;
-- 查询studeng表中性别为女的学生ID
SELECT id
FROM student
WHERE sex='女';
-- 查询年龄小于等于4的学生的id和姓名
SELECT id ,`name`
FROM student
WHERE age >=4;


-- 确定范围 BETWEEN AND(相当于闭集合[BETWEEN,AND]) ,NOT BETWEEN AND(不属于闭集合[BETWEEN,AND]的范围)
-- 查询年龄在4到六岁的学生的id和姓名
SELECT id,`name` FROM student WHERE age BETWEEN 4 AND 6;
-- 查询年龄不在3到7岁的学生的所有信息
SELECT * FROM student WHERE age NOT BETWEEN 3 AND 7;


-- 确定集合,和
SELECT age FROM student WHERE IN(4,5,6)
SELECT age FROM student WHERE age=3 OR age=4 OR age=5


-- 字符匹配 LIKE NOT LIKE 通配符 %(代表任意长度的字符串) ,_(代表任意单个字符)
-- 查询姓名为两个字且第一个字为'狂'的学生的所有信息
SELECT * FROM student WHERE `name` LIKE '狂_';
-- 查询姓名第一个字为'狂'的学生的所有信息
SELECT * FROM student WHERE `name` LIKE '狂%'
-- 查询姓名第二个字为'狂'的学生的所有信息
SELECT * FROM student WHERE `name` LIKE '_狂%'
-- 查询姓名第一个字不为'狂'的学生的所有信息
SELECT * FROM student WHERE `name` NOT LIKE '狂%'
-- 如果用户查询的字符串本身就含有通配符,这时就要用ESCAPE'\'(换码字符)对通配符转义
-- 格式 WHERE `name` LIKE `字符串` ESCAPE'\';


-- 空值 IS NULL , IS NOT NULL
-- 查询地址为空的所有学生的信息
SELECT * FROM student WHERE `address` IS NULL;


-- 多重运算(逻辑运算) AND, OR , NOT
-- 查询姓名为两个字且第一个字为'狂'且年龄大于4的学生的所有信息
SELECT * FROM student WHERE `name`LIKE '狂_' AND age>4;
-- 查询姓名为两个字且第一个字为'狂'和第一个字为'虞'的学生的所有信息
SELECT * FROM student WHERE `name`LIKE '狂_' OR `name` LIKE '虞_';

本文转载自: 掘金

开发者博客 – 和开发相关的 这里全都有

0%