Скопировать одну строку в другой столбец в той же таблице - PullRequest
0 голосов
/ 08 мая 2018

Есть таблица, в которой CUSTOMERS распознаются по уникальным значениям ID, все записи в этой таблице также имеют логические атрибуты CONSENT.

Мне нужно скопировать эти CONSENT значения в CONSENT2 логические поля для тех же записей.

Насколько я знаю, есть несколько команд SQL, которые отключены на этом сервере.

Будет ли это работать?

UPDATE
    CUSTOMERS
SET
    CUSTOMERS_A.CONSENT_Email = CUSTOMERS_A.CONSENT_Email2
    CUSTOMERS_A.CONSENT_Phone = CUSTOMERS_A.CONSENT_Phone2
FROM
    CUSTOMERS AS CUSTOMERS_A
    INNER JOIN CUSTOMERS AS CUSTOMERS_B
        ON CUSTOMERS_A.id = CUSTOMERS_B.id

Ответы [ 2 ]

0 голосов
/ 08 мая 2018

Вы можете просто использовать, Не добавляйте дополнительное соединение / условие, пока действительно не требуется.

UPDATE CUSTOMERS
   SET (CONSENT_Email2,CONSENT_Phone2) = (CONSENT_Email,CONSENT_Phone);

Он скопирует значения CONSENT2 для обоих столбцов в CONSENT.

i.e. CONSENT >>> CONSENT2
0 голосов
/ 08 мая 2018

Можно обойтись без объединения

UPDATE
CUSTOMERS
   SET CONSENT_Email = CONSENT_Email2,
       CONSENT_Phone = CONSENT_Phone2
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...