SQL tabulky představují neuspořádané sady. Je na tom něco nejasného?
Když SELECT z tabulky, pak jsou výsledky neuspořádané . Jedinou výjimkou je použití ORDER BY ve vnějším dotazu. Zahrňte tedy ORDER BY a výsledky budou v pořádku.
EDIT:
Můžete odstranit práci pro řazení zavedením seskupeného primárního klíče.
create table #temp (
Id int identity(1,1) primary key clustered,
SKU varchar(10),
QtyRec int,
Expiry date,
Rec date
);
Potom, když to uděláte:
insert into #temp(SKU, QtyRec, Expiry, Rec)
select SKU, QtyRec, Expiry, Rec
from @Data
order by id;
Seskupený primární klíč v #temp je zaručeno, že bude v pořadí uvedeném v order by . Poté dotaz:
select *
from #temp
order by id;
vrátí výsledky v pořadí pomocí seskupeného indexu. Nebude potřeba žádné řazení.