Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sql-server/23.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql 根据两个表中匹配的记录更新列?_Sql_Sql Server_Database - Fatal编程技术网

Sql 根据两个表中匹配的记录更新列?

Sql 根据两个表中匹配的记录更新列?,sql,sql-server,database,Sql,Sql Server,Database,我们正在使用SQL Server 2016。我有两张表,DEAD和QUETABLE。但是,QUETABLE也有一个名为DEAD的列。这听起来会让人困惑,但我会尽量让它有意义。我需要做的是将QUETABLE中的列(DEAD)设置为YES,如果QUETABLE中的列WEBSITE与表DEAD中相同的命名列WEBSITE匹配 (表中的DEAD刚刚充满了死网站,QUETABLE可能有一些死网站,标记它会让我们知道) 在一个神奇的世界里,像这样的东西会起作用: UPDATE QUETABLE SET [

我们正在使用SQL Server 2016。我有两张表,
DEAD
QUETABLE
。但是,
QUETABLE
也有一个名为
DEAD
的列。这听起来会让人困惑,但我会尽量让它有意义。我需要做的是将
QUETABLE
中的列(
DEAD
)设置为
YES
,如果
QUETABLE
中的列
WEBSITE
与表
DEAD
中相同的命名列
WEBSITE
匹配

(表中的
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
             );

我想你只是想:

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
             );

哦,我想我必须先选择QUETABLE中的表。你说得对!谢谢你,我觉得很傻@纳苏。对于
“是”
,您想要的存在。你的文章只提到了
网站
,但你可能想在其他栏目上进行同样的检查。哦,我意识到我做错了什么。我的结果出人意料,所以我怀疑自己。非常感谢你!!90分钟内我不能再问其他问题了,但我有一个相关的问题,如果你能帮忙,我会通知你的!这里的问题:。我尝试将空值设置为其他值,但在“SET[USED]='NULL'where[USED]!='YES'”@Natsu中也不起作用(没有更改)。正如您所猜测的,这个问题的问题是
NULL
值。它们失败了
以及
=
。哦,我想我必须先选择QUETABLE中的表。你说得对!谢谢你,我觉得很傻@纳苏。对于
“是”
,您想要的存在。你的文章只提到了
网站
,但你可能想在其他栏目上进行同样的检查。哦,我意识到我做错了什么。我的结果出人意料,所以我怀疑自己。非常感谢你!!90分钟内我不能再问其他问题了,但我有一个相关的问题,如果你能帮忙,我会通知你的!这里的问题:。我尝试将空值设置为其他值,但在“SET[USED]='NULL'where[USED]!='YES'”@Natsu中也不起作用(没有更改)。正如您所猜测的,这个问题的问题是
NULL
值。它们会失败
以及
=