2011-08-22 118 views
1

我希望做一个选择statment,在连续选择所有不同的项目,并提供每个结果选择具有的独特

SELECT DISTINCT [Column 16] FROM [tab] 

的合计总数鲜明TSQL和多数民众赞成我的TSQL走多远

+0

给我们一些样本数据和样本结果集 –

回答

4

您是否在寻找

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)(升序为默认值,您可以省略)。

+0

OP正在寻找总数..不计数 –

+0

@Raj更多:我不确定我关注...一个领域的总数是多少?它可能是一个总和,但总和需要参数('SUM(some_other_column)',并且我没有看到应该添加哪一列的问题中的任何内容。 – a1ex07

+0

谢谢你完美的最后一个问题我将如何按大小排序结果? – Mike

0

当你GROUP BY,你会得到一个清晰的[列16]。然后你可以使用一个聚合函数。

SELECT [Column 16], Sum ([Column To Sum]) Total_T1 
FROM [tab] 
Group By [Column 16] 

如果你想通过多列群体,他们应该出现在选择,并在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]