select语句
select 字段1,字段2,..... from 表名 where 条件;
连接查询
连接查询是条件关键词是 on
-
内连接:inner join 或者直接写join
表示查询连接的表中字段相匹配的数据,返回的数据中只有匹配的数据,相当于根据条件,求交集;
写法:select a.字段1......,b.字段1......from 表1 别名1 inner join 表2 别名2 on 条件;
-
左连接查询: left join
表示查询左表的所有数据以及右表中的与条件匹配的数据,相当于左表的全部,与右表的交集select 表1别名.字段名1.。。。,表2别名.字段名2.。。。。 from 表1 别名 left join 表2 别名 on 条件
-
右连接查询,与左连接正好相反;
查询操作之排序:order by
表示查询表1中的与条件相符的字段并按照order by后的字段名进行排序
写法:select 要查询的字段 from 表名 where 条件 order by 字段名 ASC(升序,默认,不写就是升序) DESC(降序)
查询操作之:分组 group by
表示根据一个或者多个字段对结果集进行分组,并可以通过分组后的结果集进行一些操作,如:求和,求均值,求个数等
写法:
select 字段 from 表 group by 字段
select 字段 ,方法(字段) as 别名 from 表 group by 字段
select 字段, 方法(字段) as 别名 from 表 group by 字段 with rollup
注:with rollup 表示实现在分组统计分析的基础上,再对分组后的数据再进行一次相同的操作,并将数据显示在最后一行
或者还可以使用coalesce(字段,“名称”)来代替最后一行的名称,此名称显示在最后一行对应的字段所在的列上
写法:
select coalesce(name,"自定义名称"),方法(要执行此方法的列对应的字段名) from 表名 group by 字段名 with rollup ;