mysql - MySQL根据字段状态为每个字段输出多列
问题描述
我有一个 MySQL(version:5.7) 表,其中包含以下字段:
account: varchar
work_status: varchar
work_details: varchar
有这样的数据:
account | work_status | work_details |
xxx@gmail.com work coding
xxx@gmail.com onBusiness conclude a contract
我想实现类似于以下内容:
account | work_status_work | work_status_onBusiness |
xxx@gmail.com 22 8
解决方案
您可以尝试使用条件聚合 -
select account,
count(case when work_status='work' then 1 end) as work_status_work,
count(case when work_status='onBusiness' then 1 end) as work_status_onBusiness
from tablename
group by account
推荐阅读
- json - NiFi,Jolt 的操作“子字符串”不起作用
- javascript - 如何在java脚本中从对象数组形成数组数组
- r - install.package("ggiraph") 时出错:AWS-Cloud Linux 上的“没有用于调用 'regex_replace”/RStudio 的匹配函数
- ffmpeg - 对角分割以显示同一视频帧的两个位置。横向输入,纵向输出
- python - 如何为每个索引值添加差异行?
- python - 写入和读取字节元组
- angular - Angular MsalGuard for Authentication 和自己写的 Guard for Authorize,需要先等待认证
- kubernetes - nginx-ingress 控制器的 nginx.conf 文件未使用新的入口路径进行更新
- python - AsyncSSH SFTP 示例似乎是按顺序而不是异步下载文件
- javascript - 获取组件的引用并调度事件 React JS