У меня есть несколько SQL таблиц, скажем T1, T2, T3
, каждая из которых имеет 2 атрибута date, some_id
. Я хочу собрать все идентификаторы из каждой таблицы на заданную дату.
SELECT DISTINCT DATE, SOME_ID from T1
WHERE DATE = &&Date
ORDER BY SOME_ID desc;
Есть ли способ получить таблицу в форме:
DATE SOME_ID1 SOME_ID2 SOME_ID3
31/12/2019 id1 id2 id3
...
Не использовать запрос ниже?
SELECT T1.DATE,
T1.SOME_ID AS SOME_ID1,
T2.SOME_ID AS SOME_ID2,
T3.SOME_ID AS SOME_ID3,
FROM T1
JOIN T2
ON T1.DATE = T2.DATE
AND T2.DATE = &&Date
JOIN T3
ON T1.DATE = T3.DATE
AND T3.DATE = &&Date
ORDER BY SOME_ID1, SOME_ID2, SOME_ID3
Я спрашиваю, потому что у меня гораздо больше трех таблиц.
Примеры данных: T1:
date some_id
31/12/2019 25
31/12/2019 11
31/05/2019 12
31/08/2019 124
T2:
date some_id
31/01/2019 205
31/08/2019 101
31/12/2019 120
31/08/2019 14
T3 :
date some_id
31/03/2019 245
31/08/2019 141
28/02/2019 129
30/06/2019 114
31/12/2019 651
Ожидаемый результат для &&Date = 31/12/2019
:
DATE SOME_ID1 SOME_ID2 SOME_ID3
31/12/2019 25 120 651
31/12/2019 11 120 651