2013-01-23 120 views
0

有一個TSQL視圖,我需要按一列進行分組,但是,我使用的是nhibernate(C#),我也需要指定Id列。我的查詢看起來像:SQL group by兩列

SELECT 
    row_number() over(order by id)as Id, 
     column_name,..etc 
from tblName 
group by column_name 

這給我一個錯誤,Id必須包含在group by子句中。

或者,我可以這樣寫:

SELECT 
    row_number() over(order by id)as Id, 
     column_name,..etc 
from tblName 
group by column_name, id 

其返回相同的列名的名字多行。

有沒有辦法解決這個問題?

+1

'集團BY'尤其是'T-SQL',則必須彙集你的一些列。如果您可以提供具有預期結果的樣本記錄,則很容易理解問題。 –

回答

1

我想你想這樣做:當使用

Select row_number() over(order by column_name) as ID, column_name from (
     Select distinct column_name from tblName 
    ) as A 
0

你的意思是?

SELECT 
    row_number() over(partition by column_name order by id)as Id, 
     column_name,..etc 
from tblName