У меня есть два набора данных, назовем их набором данных A и набором данных B Набор данных A выглядит следующим образом: Название компании Бизнес-код Описание компании Пример А 123 Пример B 456 Некоторое описание Пример C ...

0
KoalaKey 18 Дек 2020 в 19:31

1 ответ

Лучший ответ

Этот запрос обрабатывает случаи, когда только 1 из столбцов (Business Code и Business Description) имеет значение NULL, и предполагает, что Business Name имеет значение UNIQUE.

UPDATE DatasetA A
JOIN (SELECT
    A.BusinessName,
    B.BusinessCode,
    B.BusinessDescription
FROM DatasetA A
JOIN Dataset B ON B.BusinessCode = A.BusinessCode
WHERE A.BusinessDescription IS NULL
UNION ALL
SELECT
    A.BusinessName,
    B.BusinessCode,
    B.BusinessDescription
FROM DatasetA A
JOIN Dataset B ON B.BusinessDescription = A.BusinessDescription
WHERE A.BusinessCode IS NULL) t ON A.BusinessName = t.BusinessName
SET 
    A.BusinessCode = t.BusinessCode,
    A.BusinessDescription = t.BusinessDescription
2
Ergis 18 Дек 2020 в 16:51