Обновление SQL из одной таблицы в другую, а в некоторых случаях создание новой записи, где данные не существуют - PullRequest
1 голос
/ 16 декабря 2011

Я импортировал некоторые данные в новую таблицу sql и сумел обновить импортированные данные в правильную таблицу, но не удалось обновить записи без номера клиента, я попытался обновить номер клиента, но он говорит, что не может обновить запись первичного ключа.

Это код, который я использовал для обновления полей ...

update SalBudgetCust

Set 

SalBudgetCust.Sales1 = SalBudgetCust_temp.Sales1, 
SalBudgetCust.Sales2 = SalBudgetCust_temp.Sales2, 
SalBudgetCust.Sales3 = SalBudgetCust_temp.Sales3,
SalBudgetCust.Sales4 = SalBudgetCust_temp.Sales4,
SalBudgetCust.Sales5 = SalBudgetCust_temp.Sales5,
SalBudgetCust.Sales6 = SalBudgetCust_temp.Sales6,
SalBudgetCust.Sales7 = SalBudgetCust_temp.Sales7,
SalBudgetCust.Sales8 = SalBudgetCust_temp.Sales8,
SalBudgetCust.Sales9 = SalBudgetCust_temp.Sales9,
SalBudgetCust.Sales10 = SalBudgetCust_temp.Sales10,
SalBudgetCust.Sales11 = SalBudgetCust_temp.Sales11,
SalBudgetCust.Sales12 = SalBudgetCust_temp.Sales12

From 

SalBudgetCust_temp where SalBudgetCust.Customer = SalBudgetCust_temp.Customer

Может ли кто-нибудь подсказать, как, если запись о клиенте уже не существует, она заполняется из другой таблицы и затем включает соответствующие показатели продаж?

1 Ответ

0 голосов
/ 16 декабря 2011

Попробуйте SELECT INTO оператор, как показано ниже для вставки записей, где клиент не существует:

SELECT * INTO SalBudgetCust FROM SalBudgetCust_temp WHERE NOT EXISTS (SELECT Customer FROM SalBudgetCust WHERE Customer = SalBudgetCust_temp.Customer)

Этот SO-ответ также может помочь вам найти решение:

Как избежать дубликатов в запросе INSERT INTO SELECT в SQL Server?

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