Wiem, że to trochę stare, ale musiałem zrobić coś podobnego. Chciałem wstawić zawartość jednej tabeli do drugiej, ale w przypadkowej kolejności. Zauważyłem, że mogę to zrobić, używając select top n
i order by newid()
. Bez „top n” kolejność nie została zachowana, a druga tabela miała wiersze w tej samej kolejności co pierwsza. Jednak w przypadku „top n” kolejność (w moim przypadku losowa) została zachowana. Użyłem wartości „n”, która była większa niż liczba wierszy. Moje zapytanie było więc następujące:
insert Table2 (T2Col1, T2Col2)
select top 10000 T1Col1, T1Col2
from Table1
order by newid()