SQL——2、条件查询语法WHERE
条件查询语法WHERE
SELECT column, another_column, …
FROM mytable
WHERE condition
AND/OR another_condition
AND/OR …;
注:
这里的 condition 都是描述属性列的,具体会在下面的表格体现。可以用 AND or OR 这两个关键字来组装多个条件(表示并且,或者)
|
Operator(关键字) |
Condition(意思) |
SQLExample(例子) |
|
=, !=, <,<=, >, >= |
大于,等于等比较 |
col_name != 4 |
|
BETWEEN A …ND … |
在两个数之间 |
col_name BETWEEN 1.5 AND 10.5 |
|
NOT BETWEEN … AND … |
不在两个数之间 |
col_name NOT BETWEEN 1 AND 10 |
|
IN (…) |
在一个列表 |
col_name IN (2, 4, 6) |
|
NOT IN (…) |
不在一个列表 |
col_name NOT IN (1, 3, 5) |
我们已经学会了WHERE 语句来筛选数字类型的属性,如果属性是字符串, 我们会用到字符串相关的一些操作符号,其中 LIKE(模糊查询) 和 %(通配符) 是新增的两个。
|
Operator(操作符) |
Condition(解释) |
Example(例子) |
|
= |
完全等于 |
col_name = "abc" |
|
!= or <> |
不等于 |
col_name!= "abcd" |
|
LIKE |
没有用通配符等价于 = |
col_name LIKE "ABC" |
|
NOT LIKE |
没有用通配符等价于 != |
col_name NOT LIKE "ABCD" |
|
% |
通配符,代表匹配0个以上的字符 |
col_name LIKE "%AT%"; "%AT%" 代表AT 前后可以有任意字符 |
|
_ |
和% 相似,代表1个字符 |
col_name LIKE "AN_";( "AND", but not "AN") |
|
IN (…) |
在列表 |
col_name IN ("A", "B", "C") |
|
NOT IN (…) |
不在列表 |
col_name NOT IN ("D", "E", "F") |
小贴士?
在字符串表达式中的字符串需要用引号 " 包含,如果不用引号,SQL会认为是一个属性列的名字,如:col_name = color 表示 col_name和color两个属性一样的行 ,col_name = "color" 表示 col_name 属性为字符串 "color"的行。

浙公网安备 33010602011771号