0

使用 MySQL 4.0.27 版:

UPDATE `t` SET `col_x` = 
(SELECT `col_x` FROM `t` WHERE `col_y`='123456') WHERE `col_y`= '456789'

错误消息:#1064 - 您的 SQL 语法有错误。检查与您的 MySQL 服务器版本相对应的手册,以在 'SELECT tFROM bWHERE col_x='1234附近使用正确的语法

我试过了LIKE '%123456%'

4

3 回答 3

3

很抱歉让您失望了,但如果是 MySQL,您的版本不支持子查询。

根据MySQL Dev Zone ,在 4.1 版中引入了子查询

于 2009-10-29T15:05:26.473 回答
1

您不能从查询中的同一个表中选择和更新。

参考:mysql更新文档

于 2009-10-29T15:05:58.750 回答
-1

看看这个页面。显然你需要将你的 SQL 模式设置为 'ANSI QUOTES'

于 2009-10-29T15:06:37.923 回答