Мне нужно объединить две таблицы с одинаковым количеством строк. Каждая таблица имеет 1 столбец. НЕТ СОЕДИНИТЕЛЬНОЙ СТОЛБЦЫ, на которую можно ссылаться для соединения. Мне нужно соединить их рядом, потому что каждая таблица была отсортирована отдельно, так что числовые значения находятся вверху в порядке убывания.
Таблица Earners имеет значения дохода, скажем, от 200 000 до 0. Я не могу просто выбрать, используя 2 случая, потому что тогда у меня будет первая строка с доходами выше 100 000, но первые 20 или около того записей во второй строке будут NULL. Я хочу, чтобы вторая строка также была отсортирована по убыванию.
Я искал, используя ORDER BY в CASE, но такого не было. Я пытался прочитать о row_number(), но ни один из примеров не соответствует или не имеет смысла.
drop table #20plus
select
case
when Income >= 20000 AND Income < 100000
then Income end as 'mula'
into #20plus
from Earners
order by mula desc
drop table #100plus
select
case
when Income >= 100000
then Income end as 'dinero'
into #100plus
from Earners
order by dinero desc
Select A.dinero, B.mula
FROM #100plus as A JOIN #20plus as B
ON A.????? = B.?????
Поскольку и A, и B сортируются по убыванию, перемещая все NULL вниз, на что я могу ссылаться, чтобы соединить две таблицы?
Предыдущий вывод с использованием одного оператора SELECT с двумя операторами CASE
dinero mula
2.12688e+007 NULL
1.80031e+007 NULL
1.92415e+006 NULL
… …
NULL 93530.7
NULL 91000
NULL 84500
Желаемый результат с использованием одного оператора SELECT после создания двух временных ТАБЛИЦ
dinero mula
2.12688e+007 93530.7
1.80031e+007 91000
1.92415e+006 84500
… 82500
NULL 82000
NULL …
NULL NULL
Это Microsoft SQL Server 2008. Я новичок в этом, поэтому, пожалуйста, дайте ответ как можно яснее и проще. Спасибо.