MySQL知识点

1.WITH ROLLUP:在分组的基础上进行统计数据。

例子:首先在name字段上进行分组,然后在分组的基础上进行统计

mysql> SELECT name, SUM(singin) as singin_count FROM  employee_tbl GROUP BY name WITH ROLLUP;
+--------+--------------+
| name   | singin_count |
+--------+--------------+
| 小丽 |            2 |
| 小明 |            7 |
| 小王 |            7 |
| NULL |           16 |
+--------+--------------+
4 rows in set (0.00 sec)

2.coalesce 
select coalesce(a,b,c);

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

以下实例中如果名字为空我们使用总数代替:

mysql> SELECT coalesce(name, '总数'), SUM(singin) as singin_count FROM  employee_tbl GROUP BY name WITH ROLLUP;
+--------------------------+--------------+
| coalesce(name, '总数') | singin_count |
+--------------------------+--------------+
| 小丽                   |            2 |
| 小明                   |            7 |
| 小王                   |            7 |
| 总数                   |           16 |
+--------------------------+--------------+
4 rows in set (0.01 sec)

3.NULL值
(1)IS NULL: 当列的值是 NULL,此运算符返回 true。
(2)IS NOT NULL: 当列的值不为 NULL, 运算符返回 true。
  • (3)<=>: 比较操作符(不同于=运算符),当比较的的两个值为 NULL 时返回 true。
(4)NULL 值与任何其它值的比较(即使是 NULL)永远返回 false,即 NULL = NULL 返回false 。

 


 
posted @ 2018-07-19 18:16  YSP  阅读(424)  评论(0编辑  收藏  举报