读书人

MySQL中在带有GROUP BY的SELECT语句中

发布时间: 2013-09-06 10:17:17 作者: rapoo

MySQL中在含有GROUP BY的SELECT语句中显示COUNT()为0的结果

mysql> select * from t1;+-------+------+| level | name |+-------+------+|     1 | a    ||     1 | b    ||     1 | c    ||     2 | a    ||     2 | b    ||     4 | a    ||     5 | b    |+-------+------+7 rows in set (0.00 sec)mysql> select * from t2;+------+| id   |+------+|    1 ||    2 ||    3 ||    4 ||    5 |+------+5 rows in set (0.02 sec)mysql> select t2.id as level,count(case when name is not null then 1 end) as count    ->   from t2 left join t1 on t2.id = t1.level    -> group by t2.id;+-------+-------+| level | count |+-------+-------+|     1 |     3 ||     2 |     2 ||     3 |     0 ||     4 |     1 ||     5 |     1 |+-------+-------+5 rows in set (0.00 sec)

读书人网 >Mysql

热点推荐