T-SQL Generar un rango de números entre dos números

T-SQL

Ejecutado en MS SQL Server 2014.



Como obtener un rango de números indicando el primero y el último:

	
declare @valorInicial int = 50
declare @valorFinal int = 350

;with genera as (
	select @valorInicial as num
	union all
	select num+1 from genera where num+1 <= @valorFinal
)
select * from genera
option (maxrecursion 1000)


Como llenar una tabla con un rango de números, indicando el primero y el último. En el ejemplo utilizamos una tabla temporal.
Nos puede ser muy útil para hacer comparaciones para buscar número que faltan en secuencias de otras tablas.

	
create table #tmpCompara
(
[Numero]        int not null
)

declare @valorInicial int = 50
declare @valorFinal int = 350

;with genera as (
	select @valorInicial as num
	union all
	select num+1 from genera where num+1 <= @valorFinal
)
insert into #tmpCompara (Numero)
select * from genera
option (maxrecursion 1000)


select * from #tmpCompara






Si el post te ha ayudado a salir de un marrón, te ha servido pá lo que sea o simplemente te ha gustado y quieres colaborar puedes pinchar en los anuncios ;)

Leave a Reply

Your email address will not be published. Required fields are marked *