SQL SUM一些计数

卡盘

如果我有一个这样的表:

FRUIT
------------------------
GRANNY SMITH
BANNANA
CHERRY
RED DELICIOUS
DURIAN
FIG
GRAPE
LIME
ORANGE
BRAEBURN
TANGERINE
GRANNY SMITH
ORANGE
ORANGE
GRANNY SMITH
LIME
FIG
FIG
GRANNY SMITH
BRAEBURN

我想使用SQL产生以下输出,我该怎么做?我想总结一下苹果下不同苹果品种的数量,柑桔类型的数量也一样,但是其他一切都只是一个数量。

FRUIT       COUNT
----------- ------
APPLE       7
BANNANA     1
CHERRY      1
CITRUS      6
DURIAN      1
FIG         3
GRAPE       1

我尝试将嵌套聚合与条件条件一起使用,但SQL不支持嵌套聚合,因此我正在寻找其他一些想法。

牙齿

您可以使用现有的CASE语句进行GROUP BY,但必须使用派生表(或在GROUP BY中重复该庞大的CASE):

select FRUIT, COUNT(*)
from 
 (
   select CASE 
             WHEN FRUIT IN ('GRANNY SMITH', 'RED DELICIOUS', ...) THEN 'APPLE'
             WHEN FRUIT IN ('ORANGE', 'TANGERINE', ...) THEN 'CITRUS'
             ELSE FRUIT
          END AS FRUIT
   from tab
 ) dt
group by FRUIT
order by FRUIT

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

SQL联接一些表

来自分类Dev

从SQL中删除一些东西

来自分类Dev

从SQL检索一些文本

来自分类Dev

SQL联接一些表

来自分类Dev

SQL修剪一些领先的0

来自分类Dev

sql查询给出一些错误

来自分类Dev

SQL Server 合并一些列

来自分类Dev

选择一些包含特定INT的SQL行

来自分类Dev

SQL查询以检查列是否包含一些数据

来自分类Dev

动态HTML ID(PHP,Java和一些SQL)

来自分类Dev

LINQ to SQL或其他一些选项

来自分类Dev

从Sql Server中删除一些符号

来自分类Dev

SQL获取一些组并保持顺序

来自分类Dev

需要一些复杂的JOIN协助的是SQL查询

来自分类Dev

SQL查询以获取一些规则的值

来自分类Dev

通过删除一些字符来过滤SQL查询

来自分类Dev

在SQL表列中找到一些常用单词?

来自分类Dev

来自xquery的sql需要一些解释

来自分类Dev

SQL查询以检查列是否包含一些数据

来自分类Dev

SQL-写一些东西而不是NULL值

来自分类Dev

用SQL从PHP分页系统隐藏一些页面

来自分类Dev

了解Spark SQL的一些基础知识

来自分类Dev

从 linq 中的 sql 中选择一些 id

来自分类Dev

从 SQL 结果中不需要一些凭证

来自分类Dev

SQL 查询 - 需要一些查询帮助

来自分类Dev

如何转换SQL Server中的一些记录

来自分类Dev

如何计数(选择一些表)

来自分类Dev

SQL,需要从多行中获取一些数据并放入一行

来自分类Dev

基于一些列的Linq Sum