Добавление столбца из другой таблицы в Snowflake
Это мой второй день работы со снежинкой, и я понимаю, что документация в https://docs.snowflake.net/manuals/sql-reference/sql/alter-table-column.html может охватывать некоторые из того, что я пытаюсь сделать. делаю, но я потерялся в терминологии.
Основы: у меня есть таблица под названием "Транзакции" с ключом для торговых представителей (Salesrep_Number) и другая таблица под названием "SALESREPS", два столбца с именем Salesrep_Region и тем же Salesrep_Number. Я хочу добавить Salesrep_Region из "Торговых представителей" в "Транзакции", используя Salesrep_Number в качестве ключа соединения.
Вот что я пробовал. Сначала я создал столбец "Salesrep_Region", который был пустым в "Транзакции". Следующий,
ИЗМЕНИТЬ ТАБЛИЦУ "ПЕСОЧНЫЙ ЯЩИК". "АВИСМА". "ОПЕРАЦИИ" ИЗМЕНИТЬ КОЛОНКУ SALESREP_REGION
выберите отдельные "SALESREP_REGION, SALESREP_NUMBER" из "SANDBOX"."AVISMA"."SALESREPS"
где "SANDBOX"."AVISMA"."TRANSACTIONS".SALESREP_NUMBER="SANDBOX"."AVISMA"."SALES_REPS".SALESREP_NUMBER
У меня ошибка. Должно быть просто добавить столбец с левым соединением, не создавая заново всю таблицу "Транзакции". Как мне это сделать?
1 ответ
Вы пробовали использовать оператор UPDATE вместо ALTER TABLE? Когда у вас появится новый столбец в таблице TRANSACTIONS, вы можете просто обновить:
update TRANSACTIONS t
set t.SALESREP_REGION = sr.SALESREP_REGION
from SALESREPS sr
where t.SALESREP_NUMBER = sr.SALESREP_NUMBER;
Это будет работать, только если SALESREP уникален для SALESREP_NUMBER.