繁体   English   中英

按多行区分的多行区分的SQL计数发生次数

[英]SQL Count Number of Occurrences for a Multi-Row Distinct, By Multi-Row Distinct

我有一个查询,该查询求和“总计”列中的所有值,并将它们与商店名称,年份,品牌和型号的唯一组合对齐(通过分组依据):

    select storename, year, make, model, sum(total) as [Sum]
    from #TempTable
    group by storename, year, make, model

结果示例:

    StoreA 2009 TOYO    AVALON  1039.95
    StoreB 2005 CHET    TAHOE   1039.99
    StoreC 2010 MAZD    CX-9    1040.07
    StoreD 2007 DODG    CHARGER 1040.09
    StoreE 2003 ACUT    MDX     1040.17

我想做的是向此查询添加另一列,该列计算每个组中存在多少行。 例如,我知道StoreA上有5个2009 TOYO AVALON实例,但是我想让脚本找出商店名称,年份,品牌,型号的每个唯一组合有多少个。 我希望它显示为[Sum]右侧的额外列[CarCount]。

一定有办法,但我一直找不到解决方法。 谢谢您的帮助!

除非我误解了,否则您需要依靠现有分组。 只需使用COUNT即可获取。

select storename, year, make, model, sum(total) as [Sum], COUNT(1) as CarCount
    from #TempTable
    group by storename, year, make, model

将count(*)添加到查询中,它将计算该组中的实例数

 select storename, year, make, model, sum(total) as [Sum], count(*) carcount 
    from #TempTable
    group by storename, year, make, model

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM