sql count case when
时间: 2023-09-02 09:13:58 浏览: 176
在SQL中,COUNT(CASE WHEN...)语句用于计算满足特定条件的行数。在给定的引用中,使用了几个不同的条件来计算不同的数量。
引用中的语句
```
sum(case when onefield = 1 then 1 else 0 end) one_count
```
计算了字段onefield等于1的行的数量,并将结果存储在one_count中。
引用中的语句
```
sum(case when onefield = 0 then 1 else 0 end) zero_count
```
计算了字段onefield等于0的行的数量,并将结果存储在zero_count中。
引用中的语句
```
select count(case when name like '李%' then name end) as li_cnt, count(case when name like '王%' then name end) as wa_cnt from student;
```
在这个例子中,通过使用CASE WHEN语句和LIKE子句,计算了满足条件name以'李'开头的行的数量,并将结果存储在li_cnt中。同样地,计算了满足条件name以'王'开头的行的数量,并将结果存储在wa_cnt中。
综上所述,COUNT CASE WHEN语句在SQL中用于根据给定的条件计算行数。可以根据实际需求使用不同的条件来统计数据。<span class="em">1</span><span class="em">2</span><span class="em">3</span>
#### 引用[.reference_title]
- *1* *2* [sql 语句进阶操作(count、sum、case-when、group_concat、order by limit offset、dense_rank rank、exis...](https://blog.csdn.net/lyh_950622/article/details/107185718)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"]
- *3* [SQL中count和case when结合使用统计某个条件下不重复的记录数](https://blog.csdn.net/u011489186/article/details/112274838)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"]
[ .reference_list ]
阅读全文