单表查询:
select 字段1,字段2,... from 表名 where confident
confident 精确查找= ,
范围查找>,<,>=,<=,
模糊查找 like+通配符(%多个字符,_单个字符)
包含查询 in
空值查询 is null,is not null
范围查询 between and
逻辑查询 not and or 优先级:not and or
group by 分组
having 分组筛选
order by 排序
group by 除了分组,还能去重,distinct也是去重
group by和distinct去重时的差异:前者用于聚合函数,后者对单列字段进行去重,在没有索引时distinct 效率会略高于group by,有索引时差别不大
多表联合查询
子查询:将一个查询结果当做另外一个查询结果的条件
select * from 表名 where confident ,confident为一个查询语句和查询条件的逻辑表达式
或 select * from 表名 exist(confident ),confident为一个查询语句和查询条件的逻辑表达式
内连接
select * from t1,t2 where 连接条件
内连接只连接同时满足连接条件的数据,不连接值为空的数据
左连接
select * from t1 left join t2 on 连接条件
左连接会将满足条件的左表中有空值的也查询出来
右连接
select * from t1 right join t2 on 连接条件
全连接
select * from t1 full join t2 on 连接条件
全连接将所有数据连接,包括空值