葬空吟 2021-10-18 03:19 采纳率: 61.3%
浏览 22
已结题

MYSQL 根据数据内容单独计数生产列

我想用一句SQL语句,让如下图所示的列1,根据内容生成内容计数的列。
我的写法是
SELECT count(列1=“A”)as A, count(列1=“B1”)as B1, count(列1=“B”)as B, count(列1=“C1”)as C1 FROM 表
但是这样不对,出来的计数都是1 .
我又试过
SELECT count(列1)=“A” as A, count(列1)=“B1” as B1, count(列1)=“B” as B, count(列1)=“C1” as C1 FROM 表
也不对,出来的计数都是0 ,请问我应该怎么写

img

  • 写回答

2条回答 默认 最新

  • 葬空吟 2021-10-18 06:27
    关注

    查到了,利用Case When Then Else End 多条件判断可以实现

    count(case defectRank when "A" then 1 else null end) as A,count(case defectRank when "B1" then 1 else null end) as B1,count(case defectRank when "B" then 1 else null end) as B,count(case defectRank when "C1" then 1 else null end) as C1   
    
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)
编辑
预览

报告相同问题?

问题事件

  • 已结题 (查看结题原因) 10月19日
  • 已采纳回答 10月18日
  • 修改了问题 10月18日
  • 创建了问题 10月18日
手机看
程序员都在用的中文IT技术交流社区

程序员都在用的中文IT技术交流社区

专业的中文 IT 技术社区,与千万技术人共成长

专业的中文 IT 技术社区,与千万技术人共成长

关注【CSDN】视频号,行业资讯、技术分享精彩不断,直播好礼送不停!

关注【CSDN】视频号,行业资讯、技术分享精彩不断,直播好礼送不停!

客服 返回
顶部