表accounts中的数据
过滤数据
- where
【1】
SELECT number
FROM accounts
WHERE address = 'XUPT';
从表accounts中查找address为XUPT的number
【2】WHERE 子句操作符
操作符 | 说明 |
---|---|
= | 等于 |
<> | 不等于 |
> | 大于 |
< | 小于 |
<=/ >= | 小于或等于/大于或等于 |
BETWEEN … AND … | 介于某个范围之内,例:WHERE age BETWEEN 20 AND 30 |
NOT BETWEEN …AND … | 不在某个范围之内 |
IN(项1,项2,…) | 在指定项内,例:WHERE city IN(‘beijing’,’shanghai’) |
NOT IN(项1,项2,…) | 不在指定项内 |
LIKE | 搜索匹配,常与模式匹配符配合使用 |
NOT LIKE | LIKE的反义 |
IS NULL | 空值判断符 |
IS NOT NULL | 非空判断符 |
NOT、AND、OR | 逻辑运算符,分别表示否、并且、或,用于多个逻辑连接。 |
% | 模式匹配符,表示任意字串,例:WHERE username LIKE ‘%user’ |
通配符过滤数据
- LIKE
通配符:用来匹配值的一部分的特殊字符
搜索模式:由字面值、通配符或两者组合成的搜索条件
在搜索子句中使用通配符必须使用LIKE操作符;LIKE指示后跟的搜索模式利用通配符而不是直接相等匹配进行比较。
【1】百分号(%)通配符
%表示任何字符出现任意次数
SELECT number
FROM accounts
WHERE number LIKE '0%';
查找表accounts中以0为开头的number
通配符在搜索模式中任意位置使用,并且可以使用多个通配符
【2】下划线(_)通配符
下划线只匹配单个字符而不是多个字符
SELECT number
FROM accounts
WHERE number LIKE '_ala';
查找表accounts中第一个为任意字符,后为ala的number
【3】使用通配符的技巧
- 不要过度使用通配符。如果其他操作符能达到相同的目的,应使用其他操作符。
- 在确实需要使用通配符是,除非绝对有必要,否则不要把它们用在搜索模式的开始处。把通配符置于搜索模式的开始处,搜索起来是最慢的。
- 仔细注意通配符的位置。