Добавление столбца из другой таблицы в 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.

Другие вопросы по тегам