Это моя обычная таблица:
A | B | C (table1)
----------------
1 | 2 | 3
2 | 3 | 4
3 | 4 | 5
4 | 5 | 6
7 | 8 | 9
Я хочу использовать эту таблицу, чтобы отфильтровать ее, возможно, используя объединения и т. Д.
A | B | C (table2)
----------------
1 | |
3 | |
| 4 |
| 5 |
| | 5
| | 9
, чтобы мой результат былследующее:
A | B | C
----------------
3 | 4 | 5
Моя идея состояла бы в том, чтобы объединить каждый столбец в таблице2, как показано ниже, чтобы, если столбец таблицы 2 не был нулевым, то объединялось, в противном случае не объединялось:
SELECT
t1.*
FROM table1
JOIN table2
ON ( t1.A = t2.A OR t2.A IS NULL)
AND ( t1.B = t2.B OR t2.B IS NULL)
AND ( t1.C = t2.C OR t2.C IS NULL)
Есть идеи?