我有一个包含item_name和item_color的表。 试图建立一个数据网格,我想显示项目总数和基于其他属性的分割计数,如颜色作为结果行。
例如,
我桌子上有10把椅子,所以item_name =' chair'应该给出三行,如下所述。
Item_name Item_color quantity
Chair ALL 10
Chair Red 5
Chair Black 5
有人能告诉我应该从哪里开始吗? 感谢
答案 0 :(得分:2)
尝试使用UNION ALL,然后使用GROUP BY子句聚合函数COUNT():
SELECT item_name, 'ALL', COUNT(*) as Quantity
FROM tbl
GROUP BY item_name
UNION ALL
SELECT item_name, item_color, COUNT(*) as Quantity
FROM tbl
GROUP BY item_name, item_color