gpt4 book ai didi

mysql - 在 MySQL 中使用 EXISTS

转载 作者:行者123 更新时间:2023-11-29 04:31:25 25 4
gpt4 key购买 nike

我有一个适用于所有其他数据库系统的简单查询,但在 MySQL 上失败了:

UPDATE points p 
SET p.userid = 5224
WHERE p.userid = 2532
AND NOT EXISTS (
SELECT 1
FROM points q
WHERE q.userid = 5224
AND q.game = p.game
)

我收到以下错误消息:

#1093 - You can't specify target table 'p' for update in FROM clause

有什么解决方法吗?

最佳答案

您不能在 UPDATE 子句中为主表添加别名。这应该有效:

UPDATE points 
SET userid = 5224
WHERE userid = 2532
AND NOT EXISTS (
SELECT 1
FROM points q
WHERE q.userid = 5224
AND q.game = points.game
)

关于mysql - 在 MySQL 中使用 EXISTS,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1805009/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com