UNION два стола SQL / Терадата - PullRequest
1 голос
/ 03 мая 2020

Мне нужно объединить две таблицы . Один имеет почти 400 столбцов и миллионы строк. second 20 столбцов и около 500 000 строк. Мне интересно, каков наилучший подход к объединению обеих таблиц - объединение трудно реализовать, так как у меня есть только 20 совпадающих столбцов, а для других я получаю ошибку из-за неправильных типов данных. Теперь Я использую полное внешнее объединение , а затем COALESCE для извлечения данных в конечном выводе, но из-за низкой производительности запрос не может быть использован.

Есть ли у вас какие-либо предложения о том, как добиться объединения двух таблиц, но без использования union или полного внешнего соединения ?

Или каких-либо советов, как этого избежать? несоответствие типа данных во время объединения?

Пример того, что я делаю сейчас:

SELECT 
 t1.A
,t1.B
,t1.C
,t1.D
,COALESCE(t1.E,t2.E) as E
,COALESCE(t1.F,t2.F) as F
,COALESCE(t1.G,t2.G) as G
FROM  
t1
FULL OUTER JOIN 
 t2
ON 1=2

Для t1 у меня есть 400 столбцов, для t2 20 столбцов (эти 20 используются в функции объединения) для иметь их в выходных данных

Данные из разных систем, только 20 столбцов очень похожи, поэтому есть требования, чтобы все данные были в одной таблице (фактически в виде)

Спасибо.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...