2011-10-04 50 views
4

我有一个SELECT语句UNPIVOTSQL逆透视与行号

SELECT dycd_acnam, dycd_dynam, dycd_value 
FROM GCATT.dbo.tblDaycode UNPIVOT (
dycd_value FOR dycd_dynam IN (
    Sunday, Monday, Tuesday, Wednesday, Thursday, Friday, Saturday) 
) AS pvtDaycode 
GROUP BY dycd_acnam, dycd_dynam, dycd_value 

,并返回像

dycd_acnam | dycd_dynam | dycd_value 
---------------------------------------- 
MT   | Monday  | 1 
MT   | Tuesday  | 1 
MT   | Wednesday | 0 
MT   | Thursday  | 0 

值我怎样才能行dycd_acnam前添加行号?试过RANK()但它返回错误的值。我想尽量避免使用#Temp表格。

+1

是如何计算的'row_number'? –

+0

依次。就像一个标识行一样。 – ELM

回答

3

如果你只是想一个递增列添加到结果,你可以添加

ROW_NUMBER() OVER (ORDER BY (SELECT 0)) 

SELECT列表

+0

哇。整洁而简单。非常感谢! :d – ELM