У меня есть запрос:
select * from (select top 100 percent ... from [table]
where [field1] is not null
order by [field1]) a
union all
select * from (select top 100 percent ... from [table]
where [field1] is null
order by [field2]) b
Подзапросы правильно упорядочивают свои результаты. Я хочу точные результаты первого подзапроса, ТОГДА точные результаты второго подзапроса. Тем не менее, я на самом деле получаю объединенные результаты, упорядоченные каким-то странным образом, от которого я даже не могу различить образец. У меня есть [field2] значения, разбросанные по результирующему набору, по-видимому, случайно.
Как получить результаты первого запроса сверху, а результаты второго запроса снизу?
Редактировать: Чтобы уточнить, я хочу, чтобы верхний запрос был упорядочен по его собственным условиям, а затем Я хочу, чтобы нижний запрос упорядочился по его собственным условиям.