【发布时间】:2017-01-04 12:55:32
【问题描述】:
任何可以重写以下查询的 SQL 专家:
UPDATE cmsTemplate
SET master = NULL
WHERE master IS NOT NULL
AND master NOT IN (SELECT nodeId
FROM
( SELECT * FROM cmsTemplate a) b
)
这样它不会产生以下错误:
您不能在 FROM 子句中指定目标表 'cmsTemplate' 进行更新
此处记录的问题:
http://dev.mysql.com/doc/refman/5.6/en/update.html
谢谢, 史蒂夫
更新:查询说明
查询的思路如下:
- SET master 字段 TO NULL
- WHERE master 字段 IS NOT NULL
- 并且在哪里 master 字段不等于任何 nodeId 字段记录的值(在同一个表中)
【问题讨论】:
标签: mysql sql-update syntax-error