ฉันกำลังทำงานบนโต๊ะแบบนี้:
id | type |
---|---|
1 | A |
2 | A |
3 | B |
4 | C |
5 | C |
ฉันต้องการนับจำนวนรหัสสำหรับแต่ละประเภทและได้ตารางแบบนี้
type_a | type_b | type_c |
---|---|---|
2 | 1 | 2 |
สิ่งที่ฉันทำคือ
SELECT
SUM(CASE WHEN type = 'A' THEN 1 ELSE 0 END) AS type_a,
SUM(CASE WHEN type = 'B' THEN 1 ELSE 0 END) AS type_b,
SUM(CASE WHEN type = 'C' THEN 1 ELSE 0 END) AS type_c
FROM myTable
คำถามของฉันคือ ถ้าฉันไม่รู้ว่ามีกี่ประเภท และไม่สามารถระบุทุกกรณีได้โดยเฉพาะ ฉันจะบรรลุได้อย่างไร