Mysql 对任意字段进行分组/求和
我尝试了几种不同的解决方案,但都没有成功。我给出的表格是一个与我实际使用的表格具有相似设计和功能的示例:Mysql 对任意字段进行分组/求和,mysql,Mysql,我尝试了几种不同的解决方案,但都没有成功。我给出的表格是一个与我实际使用的表格具有相似设计和功能的示例: PK | Color | Count ---------------------------- 1 Blue 4 2 Cyan 6 3 Forest 3 4 Green 2 5 Indigo 5 6
PK | Color | Count
----------------------------
1 Blue 4
2 Cyan 6
3 Forest 3
4 Green 2
5 Indigo 5
6 Navy 12
7 Pink 8
8 Purple 7
9 Red 9
10 Violet 1
在本例中,我想将其分解为颜色组并列出总和。例如,组“Blues”将包含蓝色、青色、靛蓝和海军蓝,计数为27。“紫色”是8(紫色/紫色),“绿色”是5(森林/绿色),依此类推
根据手头的信息,您将如何执行此操作?我假设您将手动定义组?是的。这适用于我工作的几个领域,因此我必须为每个不同的摘要手动定义组。谢谢。测试和确认。这正是我们所需要的。在一个应用程序中,我不得不将
selectsum
更改为selectcount
,但结果是一样的。再次感谢。我怀疑它是使用count
而不是sum
:在我必须转到count
的情况下,它是必要的,因为它起到了内部代码的作用,而不是数学值。
select sum(case when color in ('Blue','Cyan','Indigo','Navy') then Count end) as Blues_count,
sum(case when color in ('Purple','Violet') then Count end) as Purples_count,
sum(case when color in ('Forest','Green') then Count end) as Greens_count
from your_table