首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >选择Distinct总数为distinct的TSQL

选择Distinct总数为distinct的TSQL
EN

Stack Overflow用户
提问于 2011-08-22 22:02:26
回答 2查看 279关注 0票数 1

我希望使用select语句来选择一行中的所有不同项,并提供每个结果的总和

代码语言:javascript
复制
SELECT DISTINCT [Column 16] FROM [tab]

这就是我的TSQL所能达到的程度。

EN

回答 2

Stack Overflow用户

发布于 2011-08-22 22:03:58

您是否正在寻找

代码语言:javascript
复制
SELECT [Column 16], COUNT(*) 
FROM [tab]
GROUP BY [Column 16]
--WITH ROLLUP (if you need to the total )
ORDER BY COUNT(*) 

您可以将DESC关键字附加到查询的末尾,例如,如果希望结果集按降序排序,则为ORDER BY COUNT(*) DESC;如果要升序,则为ASC (升序为默认值,您可以忽略它)。

票数 4
EN

Stack Overflow用户

发布于 2011-08-22 22:07:36

当你使用GROUP BY时,你会得到一个不同的16列列表,然后你就可以对它使用聚合函数了。

代码语言:javascript
复制
SELECT [Column 16], Sum ( [Column To Sum] ) Total_T1
FROM [tab]
Group By [Column 16]

如果要按多个列进行分组,则它们应出现在select和group by中

代码语言:javascript
复制
SELECT [Column 16], [Column 17], Sum ( [Column To Sum] ) Total_T1
FROM [tab]
Group By [Column 16], [Column 17]

还可以指定多个聚合(这些聚合不会出现在group by子句中

代码语言:javascript
复制
SELECT [Column 16], [Column 17], 
      Sum ( [Column To Sum] ) Total_T1,
      Count ( [Column To Sum] ) NumOf_T1,
      Avg ( [Column To Sum] ) Avg_T1,
      Min ( [Column To Sum] ) Min_T1,
      Max ( [Column To Sum] ) Max_T1
FROM [tab]
Group By [Column 16], [Column 17]
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/7148654

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档