gpt4 book ai didi

同一个表中的 MySQL 条件更新

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

我正在寻找一种简单的方法,仅当同一个表中不存在具有我尝试更新的相同值的其他列时,才对表进行更新,最好是在单个查询中。到目前为止,我收到错误You在FROM子句中指定要更新的目标表“t1”。这是我迄今为止尝试过的一些变体(仍然无法正常工作):

UPDATE emailQueue AS t1 
SET
t1.lockedOn = 1470053240
WHERE
(SELECT
COUNT(*)
FROM
emailQueue AS t2
WHERE
t2.lockedOn = 1470053240) = 0
AND t1.lockedOn IS NULL

最佳答案

在 MySQL 中,您需要使用连接。在这种情况下,左连接是有序的:

UPDATE emailQueue eq LEFT JOIN
emailQueue eq2
ON eq2.lockedOn = 1470053240
SET eq.lockedOn = 1470053240
WHERE eq.lockedOn IS NULL AND
eq2.lockedOn IS NULL;

关于同一个表中的 MySQL 条件更新,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38698958/

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