Las tablas SQL representan desordenadas conjuntos ¿Hay algo que no esté claro sobre esto?
Cuando SELECT
de una tabla, entonces los resultados están desordenados . La única excepción es cuando usa un ORDER BY
en la consulta externa. Por lo tanto, incluya un ORDER BY
y los resultados estarán en orden.
EDITAR:
Puedes eliminar el trabajo para la ordenación introduciendo una clave primaria agrupada.
create table #temp (
Id int identity(1,1) primary key clustered,
SKU varchar(10),
QtyRec int,
Expiry date,
Rec date
);
Luego, cuando lo hagas:
insert into #temp(SKU, QtyRec, Expiry, Rec)
select SKU, QtyRec, Expiry, Rec
from @Data
order by id;
La clave principal agrupada en #temp
se garantiza que estará en el orden especificado por order by
. Luego la consulta:
select *
from #temp
order by id;
devolverá los resultados en orden, utilizando el índice agrupado. No será necesario ordenar.