查询语法:
select 列名 from 表名 where 条件 group by 分组字段 having 分组后条件 order by 排序字段 limit 分页限定;
条件:where
分组:group by
排序:order by
分页:limit
基础查询
SELECT 字段 as 别名(备注) FROM 表名;as可以省略
查询多个字段
select 字段 from 表名;
select * from 表名; # *号代表所有
去重查询
select distinct 字段 from 表名;
别名:AS: 可以省略
条件查询
select 字段 from 表名 where 条件;
符号 | 功能 |
---|---|
> | 大于 |
< | 小于 |
>= | 大于等于 |
<= | 小于等于 |
= | 等于 |
<>或!= | 不等于 |
between...and... | 包含这两个数在内的范围 |
in(...) | 多选一 |
like占位符 | 模糊查询 _ 单个任意字符 % 多个任意字符 |
is null | 是null |
is not null | 非null |
and或&& | 并且 |
or或ll | 或 |
not或! | 非 |
nll值的比较不能使用=,需要使用is或is not。
通配符:_
:单个任意字符;%
:任意个数字符。
排序查询
select 字段列表 from 表名 order by 排序字段名1 [排序方式 ASC/DESC] ....
聚合排序
将一列数据作为一个整体,进行纵向计算
select 聚合函数(列名) from 表;
聚合函数 | 作用 |
---|---|
count(列名) | 统计数量 一般选非null的列 |
max(列名) | 最大值 |
min(列名) | 最小值 |
sun(列名) | 求和 |
avg(列名) | 平均值 |
分组查询语法:
select 字段列表 from 表名 [where 分组前条件限定] group by 分组字段名 [having 分组后条件过滤]
- where 分组前进行限定, 不满足条件则不分组 而having 是分组后对结果进行过滤
- 执行顺序 where>聚合函数>having
分页查询
select 字段列表 from 表名 limit 起始索引, 查询条目数
- 起始索引: 从0开始
- 计算公式 :
起始索引=(当前页码-1)*每页显示的条数