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í.