- “_” 示意任意一个字符
- “%” 示意任意多个任意字符, 蕴含 0 个
- “=” 不能够判断 NULL 值,”<=>” 能够比拟 NULL 值
- “<>” 不能够判断 NULL 值
- 转义字符 ”\” 能够在 SQL 中应用
- ESCAPE 关键字能够指定转移字符
- BETWEEN AND 蕴含两个临界值, 且临界值不能颠倒
- IN 列表中的值类型必须统一
SELECT
字段名
FROM
表名
WHERE
条件
FROM 表名 ----> WHERE 条件 ----> SELECT 字段名
- 大于             >
- 小于             <
- 等于             =         <=>
- 不等于         <>       !=
- 大于等于     >=
- 小于等于     <=
查问 id 大于 10 的用户名 —> {“>”}
SELECT
name
FROM
mytable
WHERE
id > 10;
查问 age 小于 30 的用户 id —> {“<“}
SELECT
id
FROM
mytable
WHERE
age < 30;
查问 name 不等于 Mike 的用户 age —> {“<>”}
SELECT
age
FROM
mytable
WHERE
name <> 'Mike';
- 与     &     and
- 或     |     or
- 非     !     not
查问 age 在 18-30 之间的用户的 id 和 name —> {“AND”}
SELECT
id,
name
FROM
mytable
WHERE
age >= 18
AND
age <= 30
查问薪水不在 6000-8000 之间, 或者薪水小于 3000 的用户 id —> {“OR”,”NOT”}
# 第一种写法:
SELECT
id
FROM
mytable
WHERE
salary < 6000
OR
salary > 8000
OR
salary < 3000;
# 第二种写法:
SELECT
id
FROM
mytable
WHERE
NOT(salary >= 6000 AND salary <= 8000)
OR
salary < 3000;
- LIKE
- BETWEEN AND
- IN
- IS NULL
- IS NOT NULL
查问名字中蕴含字母 a 的用户信息 —> {“LIKE”,”%”}
SELECT
*
FROM
mytable
WHERE
name LIKE '%a%';
查问用户名第三个字符为 c, 第 5 个为 d 的用户 id 和 age —> {“_”}
SELECT
id,
age
FROM
mytable
WHERE
name LIKE '__c_d%';
查问用户名第三个字符为 ”_” 的用户 id —> {“\”,”ESCAPE”}
# 第一种写法:
SELECT
id
FROM
mytable
WHERE
name LIKE '__\_%';
# 第二种写法:
SELECT
id
FROM
mytable
WHERE
name LIKE '__$_%' ESCAPE '$';
查问 age 在 18-30 之间的用户信息 —> {“BETWEEN AND”}
SELECT
*
FROM
mytable
WHERE
age BETWEEN 18 AND 30;
查问 age 为 18 和 20 的用户信息 —> {“IN”}
SELECT
*
FROM
mytable
WHERE
age IN(18,20);
查问没有奖金的用户信息 —> {“IS NULL”,”<=>”}
# 第一种写法:
SELECT
*
FROM
mytable
WHERE
commission IS NULL;
# 第二种写法:
SELECT
*
FROM
mytable
WHERE
commission <=> NULL;