count 带条件计数
mysql 统计条数很简单, 使用 count 函数就行,但是带条件统计,可能有些小伙伴跟我一样,还有些疑问,废话不多说 上代码
表中三条数据
1. count(*) 和 count(字段) :
区别:count(*) 包含 null 值的条目,count(字段) 则不包含
例如:
select count(*) from sys_user // 返回 3 条数据
select count(name) from sys_user // 返回 2数据,就是将name字段为null的去除了
2.加条件count用法
例:求 age 小于 19 人数
select count(age <19 or null) from sys_user // 返回 1条数据
条件可以随便写( > 、<、=、is null 等等),但是必须加上 or null ,否则统计出来 就是 3 条;
其他写法,效果一致:
select count(if(age <19, 1, null)) from sys_user // 返回 1条数据select count(case when age <19 then 1 end) from sys_user // 返回 1条数据