mysql count 各种情况 case when
时间: 2023-07-07 20:34:06 浏览: 115
SQL学习六-CASE WHEN
MySQL中的COUNT函数可以用于计算表中符合特定条件的行数。而对于特定条件,可以使用CASE WHEN语句进行判断。
以下是一些示例:
1. 计算表中所有行的数量:
```
SELECT COUNT(*) FROM table_name;
```
2. 计算表中某个字段值为非空值的行数:
```
SELECT COUNT(column_name) FROM table_name;
```
3. 计算表中满足某个条件的行数:
```
SELECT COUNT(*) FROM table_name WHERE condition;
```
4. 根据不同条件计算不同行数,使用CASE WHEN语句:
```
SELECT COUNT(CASE WHEN condition1 THEN 1 ELSE NULL END) AS count1,
COUNT(CASE WHEN condition2 THEN 1 ELSE NULL END) AS count2,
COUNT(CASE WHEN condition3 THEN 1 ELSE NULL END) AS count3
FROM table_name;
```
在这个例子中,当条件1成立时,计数器count1加1,其他计数器不变。当条件2成立时,计数器count2加1,其他计数器不变。当条件3成立时,计数器count3加1,其他计数器不变。最后返回三个计数器的值。
阅读全文