unit_table
的 UNIT_ID STATUS_ID
1个
2个2
3个2
4个3
5 3
上面显示了一个包含2个不同表结构的示例表,它是unit_id和status_id,现在我想编写一个查询来查明有多少个单元,其中status_id是1,2或3.我已经编写了一个SQL,如图所示下面: -
select count(unit_id)
where status_id =1 ..
但是我被困在这里...因为我不知道如何使用where子句来计算具有不同状态id的单位。
有人有任何想法吗?
答案 0 :(得分:0)
试试这个:
SELECT status_id, COUNT(*) AS cnt
FROM yourTable
WHERE status_id IN (1, 2, 3)
GROUP BY status_id;
答案 1 :(得分:0)
SELECT COUNT(*), Status_id FROM unit_table GROUP BY Status_id
如果你想计算每个Status_id有多少不同的Unit_id,那么:
SELECT COUNT(DISTINCT Unit_id), Status_id FROM unit_table GROUP BY Status_id
希望有所帮助