我正在尝试使用提供thread_id
和threadfrn_id
的一个查询来更新多个表的行。
但似乎threadfrn_id = 460
表中files
的行不存在,则即使对于threads
表,也不会发生更新。
任何人都有这个解决方案吗?
的MySQL
UPDATE threads,files SET threads.del = 1, files.del = 1
WHERE threads.thread_id=460 AND files.threadfrn_id=460
PS 我要做的是,Update
del
列,以便稍后可以从表中删除del = 1
行。
答案 0 :(得分:0)
尝试以下查询:
UPDATE T
SET T.del = 1, OT.del = 1
FROM threads T
INNER JOIN files OT
ON T.thread_id = OT.threadfrn_id
and T.thread_id = 460 and OT.threadfrn_id = 460
答案 1 :(得分:0)
在join
子句中加入WHERE
。
UPDATE threads,files SET threads.del = 1, files.del = 1
WHERE --include join condition for the tables
and threads.thread_id=460 AND files.threadfrn_id=460
或者您可以在2个语句中完成
UPDATE threads SET del = 1 where thread_id=460;
UPDATE files SET del = 1 where threadfrn_id=460;