所以我正在尝试更新一个表中的一列。但是,我正在尝试更新表中的特定记录。我知道我需要使用更新语句,但我对SET和UPDATE语句的逻辑感到困惑。
基本上我正在尝试更新与特定网站ID相关的评论部分。
UPDATE SQL_TABLE
SET COMMENTS = "Comment 1" AND "Comment 2"
WHERE SITE = 2000 , 2001 ;
答案 0 :(得分:0)
一般情况下,表格的更新是按集合完成的,也可以是一次一次调用。
但是,如果你必须***用两个不同的值更新2条记录,这是一种方法:
Update SQL_Table
set comments = case when site = 2000 then 'Comment 1'
when site = 2001 then 'Comment 2' end
WHERE SITE in (200,2001)
答案 1 :(得分:0)
看起来您正在尝试更新同一查询中的两条记录。为此,您需要CASE
声明:
UPDATE SQL_TABLE
SET COMMENTS = CASE SITE
WHEN 2000 THEN "Comment 1"
WHEN 2001 THEN "Comment 2"
ELSE COMMENTS
END
WHERE SITE IN (2000 , 2001);
ELSE
声明的原因是您不会意外更改您不想要的记录。