2010-04-28 10 views
2

Основываясь на следующих TableAгенерации порядковый номер

Data 
-------- 
Dummy1 
Dummy2 
Dummy3 
. 
. 
DummyN 

есть способ, чтобы генерировать порядковый номер при выборе строки из таблицы.

select sequence() as ID,* from Data что-то вроде, что даст

ID Data  
--------- 
1 Dummy1 
2 Dummy2 
3 Dummy3 
.... 
N DummyN 

Спасибо.

ответ

4

Вы хотите иметь столбец в своей таблице, который является последовательностью? Используйте INT IDENTITY.

Вы хотите добавить порядковый номер в оператор SELECT или вид? Используйте метод ROW_NUMBER() OVER(ORDER BY .....).

SELECT 
    ROW_NUMBER() OVER (ORDER BY Data) AS 'ID', 
    Data 
FROM 
    dbo.YourTable 
0

Используйте вычисляемый столбец:

CREATE Table MyTAble 
(
    ID int identity(1,1), 
    Data varchar(20) AS 'Dummy' + ID 
)