Я ищу SQL-запрос для обновления столбца до того же идентификатора для каждого дубликата в другом столбце, а затем удалить каждую перезаписанную строку из другой таблицы.SQL - обновить столбец для каждого дубликата в другом столбце
Например
у меня есть:
IndustryId ProductId ExternalId
144 3332 13
147 3423 13
148 3532 13
2637 63199 32
121 2789 32
Я хочу:
IndustryId ProductId ExternalId
144 3332 13
147 3332 13
148 3332 13
2637 63199 32
121 63199 32
Мне также нужно записать перезаписаны PRODUCTID значения, так что я могу удалить эти строки в другой таблице (3423, 3532 и 2789 должны быть удалены в другой таблице). Может быть в нескольких запросах, если это необходимо, это не имеет значения.
Каков наилучший способ достичь этого?
Спасибо, это, кажется, делает первую часть, но что об удалении перезаписаны PRODUCTID находится в другой таблице? Мне нужно либо записать все перезаписанные ProductId (или сделать прямое удаление в другой таблице) – parliament
А также, я не понимаю запрос или на самом деле не обновляет первую таблицу для начала? – parliament
Хорошо, я получил обновление для работы liek so '; с cte (...) UPDATE t SET t.ProductId = c.ProductId от cte c right external join @table t \t на c.externalid = t.ExternalId ' Но ответ еще не завершен до удаления других записей – parliament