1、简单查询
select
FIELDS... 列筛选
from
TABLENAME
where
... 原始数据行筛选
group by
FIELDS... 左1位为主,其右依次为辅,以逗号分隔
having
... 分组结果二次筛选
order by
[FIELD ASC默认/DESC]... 排序
limit 当前页码:pageNo,每页数据量:pageSize,总页数:total
(pageNo-1)*pageSize,pageSize
#聚合函数:avg,min,max,count,sum
#列别名 select id,count(1) [stuNum]…
#分组查询[可以]出现在字段列表中的字段:参与分组的字段和聚合函数
2、复杂查询
子查询
select
可以出现子查询
from
可以出现子查询
where
可以出现子查询 但在in/all/some/any子查询中不能使用limit
group by
不可以
having
可以出现子查询
order by
不可以
limit
不可以
合并查询
select
FIELDS...
from
TABLE1,...,TABLE2
...
连接查询 数据多的前置(从表前置)
内连接
select
FIELDS...
from
TABLEA A
inner join
TABLEB B
on
A.fk=B.pk
外连接
select
FIELDS...
from
TABLEA A
left/right join
TABLEB B
TABLEA A
left/right join
TABLEB B