过滤数据 Filtering
优点
- 减少检索到的项目,加速运行速度;
- 减轻客户端压力;
使用Where语句实现,WHERE ColName operator value;
operator 用<>表示不等于,BETWEEN 以及 IS NULL
In Operator
IN (9, 10, 12);
Or Operator
与 IN 的功能相同,但是使用 IN 可以
- 有更长的列表,写法更加简洁;
- IN 执行速度更快;
- 可以嵌套另一个SELECT;
如果是常量值,IN会sort列表然后使用二分搜索,但是OR是一个一个地对比
WildCards
对于string 值和 text 数据特别有用,一个 wildcard 是一个用以匹配值的特殊字符。
一般会跟着LIKE一起使用
wildcard | 用法 |
---|---|
%pizza | 以pizza结尾的字符串 |
piza% | 以pizza开头的字符串 |
_ underscore 表示一个单独的字符
MS Access 使用 asterisk () 而不是 the percent sign (%), and a question mark (?) 而不是 the underscore (_).*
Bracket [] 用法
不适用于DBMS,SQLite
使用 wildcard 的坏处
运行时间更长
ORDER BY
- 可以接受多个列,可以用数字表示第几列
- 使用多个列的时候应该用逗号隔开
- 可以使用没有被SELECT的列
- 必须是最后的语句
还可以用 ASC 和 DESC
函数
AVG COUNT MIN MAX SUM
例如:
SELECT AVG(point) AS AvgPoint FROM data;
DISTINCT
不计算重复的元素;
不能与COUNT(*)一起使用
GROUP BY
-
意思是以某个东西为分组
-
可以包含多个列
-
NULL也会被分组进去
-
WHERE 在数据分组前起作用,HAVING 在分组之后起作用
网友评论