我希望使用select语句来选择一行中的所有不同项,并提供每个结果的总和
SELECT DISTINCT [Column 16] FROM [tab]这就是我的TSQL所能达到的程度。
发布于 2011-08-22 22:03:58
您是否正在寻找
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 (升序为默认值,您可以忽略它)。
发布于 2011-08-22 22:07:36
当你使用GROUP BY时,你会得到一个不同的16列列表,然后你就可以对它使用聚合函数了。
SELECT [Column 16], Sum ( [Column To Sum] ) Total_T1
FROM [tab]
Group By [Column 16]如果要按多个列进行分组,则它们应出现在select和group by中
SELECT [Column 16], [Column 17], Sum ( [Column To Sum] ) Total_T1
FROM [tab]
Group By [Column 16], [Column 17]还可以指定多个聚合(这些聚合不会出现在group by子句中
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]https://stackoverflow.com/questions/7148654
复制相似问题