Мне нужно перечислить два ENTITY_ID (путем запроса таблицы RELATIONS с WHERE между двумя датами), относящиеся к каждой паре SOURCE / ACCOUNT в таблице RELATIONS.
- ENTITIES table
ENTITY_ID (PK)
ENTITY_NAME
- ACCOUNTS table
SOURCE (PK)
ACCOUNT (PK)
ENTITY_ID (FK)
- RELATIONS table
RELATION_ID (PK)
SOURCE_1 (FK)
ACCOUNT_1 (FK)
SOURCE_2 (FK)
ACCOUNT_2 (FK)
TIMESTAMP
В приведенном ниже запросе извлекается ENTITY_ID одной пары SOURCE / ACCOUNT (SOURCE_1 / ACCOUNT_1), но мне также потребуется ENTITY_ID для SOURCE_2 / ACCOUNT_2, а не в качестве второго столбца в выводе, а каквторая строка (значение).
SELECT A.ENTITY_ID
FROM RELATIONS R
JOIN ACCOUNTS A
ON R.SOURCE_1 = A.SOURCE
AND R.ACCOUNT_1 = A.ACCOUNT
WHERE R.TIMESTAMP >= DATETIME1 AND R.TIMESTAMP < DATETIME2
Пример необходимого вывода (1 столбец, 2 значения):
ENTITY_ID
Output record #1 1234
Output record #2 1235