Редактировать: После попытки применения метода COALESCE я столкнулся с проблемой, когда данные повторяются с одними и теми же данными для каждой категории мощности. Столбец 2 - мощность.
Я создал две временные таблицы, обе с точно такой же структурой таблицы. В этих таблицах есть несколько столбцов, которые могут иметь одинаковые значения, а затем несколько столбцов значений, которые будут иметь разные числа. Некоторые из них будут NULL в одном столбце, и не null в другом. Я хочу собрать все значения вместе, и в строках с одинаковым сайтом и заводом я бы хотел, чтобы значения были объединены.
Вот пример того, как могут выглядеть две таблицы и какой результат я ожидаю
TABLE1:
SITE PLANT VALUE_1 VALUE 2
S1 P1 54 66
S1 P2 43 43
TABLE 2:
SITE PLANT VALUE_1 VALUE_2
S1 P1 33 43
S2 P1 34 22
RESULT:
SITE PLANT t1_VALUE_1 t1_VALUE_2 t2_VALUE_1 t2_VALUE2
S1 P1 54 66 33 43
S1 P2 43 43 NULL NULL
S2 P1 NULL NULL 34 22
Первоначально я думал о полном объединении. Однако это не работает, потому что в операторе select вы должны указать, откуда брать столбцы, например, site и plant; но если выбрать и t1.site, и t2.site, то получится два столбца. Ближе всего я подошел к следующему запросу, однако при любом результате в S2, который имеет сайт и завод, отсутствующие в S1, вы получаете нулевые значения для S1 и S2.
SELECT t1.Site, t1.Plant, t1.Value_1, t1.Value_2, t2.Value_1, t2.Value_2
FROM table1 t1
FULL JOIN table2 t2
ON t1.site = t2.site
AND t1.plant = t2.plant