понедельник, 27 июля 2015 г.

table as range(10000)

В mssql для получения таблицы, содержимое которой имеет вид списка (массива) диапазона чисел, следует использовать такой трюк:

CREATE TABLE dbo.TEST (ID INT IDENTITY (1,1), ROWID uniqueidentifier) 
GO 
INSERT INTO dbo.TEST (ROWID) VALUES (NEWID())  
GO 10000
Получим таблицу:
ID ROWID
1 05BACEAB-44D5-4758-A345-335941CAF5A7
2 B321648E-AFAE-47F8-B98D-E837776F9494
3 3E616A7D-6A59-4EF8-9748-7F12F77B47D3
4 C8E96D35-C4CE-4B9D-A053-E398BD20AF96
5 A76CA6F2-2E96-4AC7-8058-128BB399790E

(На всякий случай получили уникальный rowid).