MySQL常用SQL语句总结

1、with rollup 可以实现在分组统计数据基础上再进行相同的统计

      SELECT name, SUM(score) as score_count FROM  score GROUP BY name with rollup

2、 coalesce 来设置一个可以取代NUll 的名称

    语法:select coalesce(a,b,c)

    参数说明:如果a==null,则选择b;如果b==null,则选择c;如果a!=null,则选择a;如果a b c 都为null ,则返回为null(没意义)

    SELECT  coalesce(name, '汇总'), SUM(score) as score_count FROM  score GROUP BY name with rollup

3、MYSQL连接使用

  • INNER JOIN(内连接,或等值连接):获取两个表中字段匹配关系的记录。
  • LEFT JOIN(左连接):获取左表所有记录,即使右表没有对应匹配的记录。
  • RIGHT JOIN(右连接): 与 LEFT JOIN 相反,用于获取右表所有记录,即使左表没有对应匹配的记录。

4、NULL 值处理

      select name  from user where 1=1  and customer_name IS NULL

      select name  from user where 1=1  and customer_name IS NOT NULL

5、语法顺序  select –>where –> group by–> having–>order by

    SELECT
    FROM
    WHERE (先过滤单表/视图/结果集,再JOIN)
    GROUP BY
    HAVING (WHERE过滤的是行,HAVING过滤的是组,所以在GROUP之后)
    ORDER BY

原文地址:https://www.cnblogs.com/wueryuan/p/11792535.html