SQL - 每个数字之间有一行

时间:2013-11-15 04:09:37

标签: sql sql-server

我在一行(1和3)中有两个数字,我想返回一个结果集,其中包含两行之间的每个数字的一​​行。

declare @looprange table ( LoopStart int, LoopEnd int)
insert @looprange values (1,3)


select * from @looprange

如何使用sql server 2008 r2返回以下内容?

1
2
3

1 个答案:

答案 0 :(得分:2)

请尝试使用CTE:

declare @looprange table ( LoopStart int, LoopEnd int)
insert @looprange values (1,3)

;with T as(
  select * from @looprange
  union all
  select LoopStart+1, LoopEnd from T
  where LoopStart+1<=LoopEnd
)
select LoopStart From T
OPTION (MAXRECURSION 0)