产生行数,每行增加10,000

问题描述 投票:0回答:1

我需要返回一个生成的ID,其中每行将增加10,000。

例如,下面的ExpectedResult列,如果有更多行,则每次将增加10,000。

Create Table #temp
(
    ID uniqueidentifier,
    ExpectedResult int
)
insert into #temp
(
    ID,
    ExpectedResult
)
select
    NEWID(),
    10000
union
select
    NEWID(),
    20000
union
select
    NEWID(),
    30000
union
select
    NEWID(),
    40000
union
select
    NEWID(),
    50000

select * from #temp
order by ExpectedResult

drop table #temp

我找到了下面的示例,但是我不确定每次如何将计数增加10,000

ROW_NUMBER() OVER (ORDER BY (SELECT 100))
sql sql-server tsql
1个回答
0
投票

如果使用的是SQL Server 2012或更高版本(包括SQL Server 2017),则可以使用CREATE SEQUENCE创建编号序列。要创建以10000为增量的SEQUENCE,请添加子句INCREMENT BY

例如:

CREATE SEQUENCE Test.CountBy1  
    START WITH 10000  
    INCREMENT BY 10000  

有关详细信息,请参阅CREATE SEQUENCE上的以下SQL Server文档:https://docs.microsoft.com/sql/t-sql/statements/create-sequence-transact-sql?view=sql-server-2017

© www.soinside.com 2019 - 2024. All rights reserved.