2017-04-25 23 views
0

我有以下列,我想要得到每行旁边唯一行的总数。我会怎么做?SQL:一列中行数的计数总和

The Column i have | Col i want 
52806      9 
52806      9 
52806      9 
53317      9 
54620      9 
54722      9 
54830      9 
54917      9 
54923      9 
54942      9 
54947      9 
54947      9 

我在网上搜索了合适的答案,我找不到它在任何地方! 我不想通过子句中使用组,因为它是一个大的查询

+0

你是说像'SELECT COUNT(不同的列)从mytable'? – ZLK

+0

如果我用count它给我1每行 –

回答

1

听起来像一个CROSS JOIN

-- CROSS JOIN 
SELECT A.[The Column], 
     B.[Col you want] 
FROM dbo.YourTable A 
CROSS JOIN (SELECT COUNT(DISTINCT [The Column]) [Col you want] 
      FROM dbo.YourTable) B 
; 
+0

@sandeshbn怪异。那么'CROSS JOIN'应该可以工作 – Lamak

+1

@sandeshbn看起来它对我有用:http://rextester.com/NZZ33499 – SqlZim

+0

我想要的列不在数据库表中,它的计数是我想要添加的 –

0

我认为这应该工作

select T.TableColumn, COUNT(T.TableColumn) AS ComputedCol FROM GivenTable T GROUP BY T.TableColumn