-
count(*)
与count(column)
的区别count(*)
返回的是该表的总行数,而count(column)
返回的是column这一列中值不为NULL的行数。 -
where
子句和having
子句的异同where子句和having子句均用于过滤结果。二者所用的操作符共用。
where子句过滤的是行,属于分组前过滤,而having过滤的是分组,属于分组后过滤,与group by子句配合使用。
where和having可以同时使用。 -
使用
union
进行组合查询union
关键词将两个查询结果进行纵向拼接,相同的结果会只保留其中一条。若重复内容需要均保留,则使用union all
即可。
使用union
后若需要排序,只能在末尾通过order by子句,不能在中间写。 -
insert select
和select into
的异同二者均用于用select的结果插入到数据表中。insert select属于插入数据,而select into 属于导出数据(不存在的表)。
SQL子句顺序:select from where group by having order by