Как объединить старые и новые табличные данные с другой таблицей, не получая дубликатов? (Снежинка SQL)
Всем привет,
Нужна помощь с соединениями в snowflake SQL:
Вот текущий сценарий:
Выберите a.*, b.payment_option, b.setup_date из Master_Table a
слева соедините Product_Table b на a.acct_id=b.acct_id и a.date=B. product_date
Изменение в таблице продуктов:
Существует новая таблица, заменяющая product_table, но на данный момент. Итак, я должен объединить данные как из старой (product_table), так и из новой таблицы (new_table). Мне нужна помощь, чтобы понять, как объединить данные как из новых, так и из старых таблиц с главной таблицей, не получая дубликатов.
Что я уже пробовал:
Вот что я сделал:
/* возьмите соответствующие данные из старой таблицы и объедините их с главной таблицей*/
Создайте или замените временную таблицу Old_tbl_data как
Выберите a.*, b.payment_option, b.setup_date из Master_Table a
внутреннее соединение Product_Table b на a.acct_id=b.acct_id и a.date=B. product_date;
/* возьмите соответствующие данные из новой таблицы и объедините их с основной таблицей*/
Создайте или замените временную таблицу new_tbl_data как
Выберите a.*, b.product_option в качестве payment_option, b.setup_date из Master_Table a
внутреннее соединение new_Table b на a.acct_id=b.acct_id и a.date=B. product_date;
/*объединение совпадающих данных из старой и новой таблиц*/
создайте или замените таблицу combined_product_data как
выберите * из Old_tbl_data
Союз всех
выберите * из new_tbl_data;
/* получить все данные из главной таблицы и соответствующие данные из таблицы продуктов (старые и новые)
выберите a.*, b.payment_option, b.setup_date из Master_table a
левое соединение combined_product_data b на a.acct_id=b.acct_id и a.date=b.product_date;
Я проверил окончательные данные из приведенного выше сценария и исходного сценария. И то, и другое-одно и то же, но правильный ли это подход? Не создаю ли я слишком много временных таблиц? Есть ли какой-то другой способ сделать это или подойти?
любая помощь будет оценена по достоинству?
спасибо,
Gerry Schmitz
Если это одноразовая операция, оптимизация не должна быть приоритетом.
Member 14859681
Привет Джерри,
Да, это только для одного раза запустить. Спасибо!