where 条件字句
搜索条件可由一个或多个逻辑表达式组成 , 结果一般为布尔值
逻辑运算符
运算符 |
语法 |
描述 |
and && |
a and b a && b |
逻辑与 两个为真, 结果为真 |
or || |
a or b a || b |
逻辑或 一个为真, 结果为真 |
not ! |
not a !a |
逻辑非 真为假, 假为真 |
SELECT `name`,`sex` FROM student
SELECT `NAMe`, `address` FROM student WHERE `NAME` >= 95 AND `NAME`<= 100
SELECT `NAMe`, `address` FROM student WHERE `NAME` >= 95 && `NAME` <= 100
SELECT `name`,`address` FROM student WHERE `name` BETWEEN 95 AND 100
SELECT `NAMe`, `address` FROM student WHERE `NAME` != 1 AND `NAME` < 10
SELECT `NAMe`, `address` FROM student WHERE NOT `NAME` = 100 AND `NAME` > 90
模糊查询: 比较运算符
运算符 |
语法 |
描述 |
is null |
a is null |
如果a为null, 结果为真 |
is not null |
a is not null |
如果a不为null, 结果为真 |
between and |
3 between 1 and 5 |
如果 3 在 1 和 5 之间, 结果为真 |
Like |
a like b |
sql匹配, 如果a匹配b, 结果为真 |
In |
a in (abcd, pdosa, …) |
若 a 在 (abcd, pdosa, …) 中, 结果为真 |
SELECT `name` FROM student WHERE `name` LIKE '张%'
SELECT `name` FROM student WHERE `name` LIKE '张_'
SELECT `name` FROM student WHERE `name` LIKE '张__'
SELECT `name` FROM student WHERE `name` LIKE '%张%'
SELECT `id`,`name` FROM student WHERE `id` IN (1,2,3)
SELECT `id`,`name`,`address` FROM student WHERE `address` IN ('北京')
SELECT `name`,`address` FROM student WHERE `address`='' OR `address` IS NULL
SELECT `name`,`address`,`birthday` FROM student WHERE `birthday` IS NOT NULL
SELECT `name`,`address`,`birthday` FROM student WHERE `birthday` IS NULL