繁体   English   中英

更新基于来自两个匹配表的记录的列?

[英]Updating a column based off records from two tables matching?

我们正在使用 SQL Server 2016。我有两个表, DEADQUETABLE 但是, QUETABLE也有一个名为DEAD的列。 这听起来令人困惑,但我会尽量让它有意义。 我需要做的是,如果QUETABLE WEBSITE DEAD WEBSITE QUETABLE DEAD )设置为值YES

DEAD表只是填满了死网站, QUETABLE可能有一些死网站,标记它会让我们知道)

在一个神奇的世界里,这样的事情会起作用:

UPDATE QUETABLE 
SET [DEAD] = 'YES' 
WHERE
    SELECT de.website, de.[city], de.[state], de.[zip], de.[new-ind], de.phone
    FROM [QUETABLE] de
    WHERE EXISTS (SELECT website, company, zip
                  FROM dead d2
                  WHERE d2.website = de.website OR d2.state = de.state OR d2.zip = de.zip)

但显然这不可能发生,我真的不知道该怎么做。

我想你只是想要:

UPDATE de
    SET [DEAD] = 'YES'
FROM [QUETABLE] de
WHERE EXISTS (SELECT website, company, zip
              FROM dead d2
              WHERE d2.website = de.website OR d2.state = de.state OR d2.zip = de.zip
             );

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM