是否有一些查询"魔法"可以执行我正在寻找的内容,或者必须使用返回的结果以编程方式完成?
我有桌子"骨头":
Color Amount Length
-----------------------
yellow 3 15
brown 2 16
white 4 10
yellow 2 11
black 2 15
white 1 15
brown 2 16
white 4 10
yellow 1 11
black 2 15
Run Code Online (Sandbox Code Playgroud)
我实际上想要得到一个观点,我看到它按每种颜色的骨骼总量排序,并查看数量.应该是这样的:
Color Amount
-----------------------
white 9
yellow 6
brown 4
black 4
Run Code Online (Sandbox Code Playgroud)
但到目前为止,我只想到了以下查询:
SELECT Color,COUNT(*) as count FROM tablename GROUP BY Color ORDER BY count DESC;
Run Code Online (Sandbox Code Playgroud)
但这给了我:
Color Amount
-----------------------
white 3
yellow 3
brown 2
black 2
Run Code Online (Sandbox Code Playgroud)
哪个是具有不同值的事件计数,但不是我真正想要的.是否可以在一个查询中?如果这样的魔法可能,我该如何扩展呢?例如,我的数量相同,但是对于长度超过11厘米的骨头,我们可以这样说吗?
小智 5
使用
SUM(amount)
Run Code Online (Sandbox Code Playgroud)
代替
COUNT(*)
Run Code Online (Sandbox Code Playgroud)
因为SUM()会添加该分组中的所有值,而COUNT()仅计算NOT NULL的出现次数
| 归档时间: |
|
| 查看次数: |
804 次 |
| 最近记录: |