Mysql多重计数和选择
嗨,伙计们,我正在为特定的ID计算特定的项目 数据库结果Mysql多重计数和选择,mysql,sql,Mysql,Sql,嗨,伙计们,我正在为特定的ID计算特定的项目 数据库结果 name remarks joseph greggory On time joseph greggory On time lara joy On time lara joy Absent Mark Joben On time Mark Joben
name remarks
joseph greggory On time
joseph greggory On time
lara joy On time
lara joy Absent
Mark Joben On time
Mark Joben Absent
Isnaira Lyn Absent
Isnaira Lyn Absent
结果应该是
name On time Late Absent
joseph Greggory 2 0 0
Lara Joy 1 0 1
Mark Joben 1 0 1
Isnaira Lyn 0 0 2
提前谢谢你们
SELECT name,
SUM(CASE WHEN remarks = 'On time' THEN 1 ELSE 0 END) `On time`,
SUM(CASE WHEN remarks = 'Late' THEN 1 ELSE 0 END) `Late`,
SUM(CASE WHEN remarks = 'Absent' THEN 1 ELSE 0 END) `Absent`
FROM TableName
GROUP BY name
- 你可以试试这个
select name,
count(case when remarks = 'On time' then 1 end) "On time",
count(case when remarks = 'Late' then 1 end) "Remarks",
count(case when remarks = 'Absent' then 1 end) "Absent"
from table1
group by name;
您可以尝试以下方法:
SELECT name,
COUNT(IF(remarks = 'On time', 1, NULL)) `On time`,
COUNT(IF(remarks = 'Late', 1, NULL)) `Late`,
COUNT(IF(remarks = 'Absent', 1, NULL)) `Absent`
FROM tbl
GROUP BY name
这里没有提供足够的信息来回答这个问题。什么疑问?桌子的结构是什么?如果您可以编辑您的问题,为清晰起见,请将其标记为版主审阅。