gpt4 book ai didi

mysql - 用最小值sql更新行

转载 作者:可可西里 更新时间:2023-11-01 06:43:44 25 4
gpt4 key购买 nike

我有这张表:

-----------------------
summonerId | timestamp
-----------------------
253222 | 14395235091096
929112 | 14395235091056
(...)

我想更新具有较低时间戳的行,但是当我这样做时我不能

UPDATE summoners_shell 
SET
summonerId = ".$s.",
timestamp = ".$time."
WHERE timestamp = (SELECT MIN(timestamp))

它更新所有行!为什么?我该如何做我想做的事?

最佳答案

SELECT-subquery 在 WHERE-clause 中时,它会锁定表,因此更新无法通过。只需使用 JOIN 即可

UPDATE summoners_shell AS s1
JOIN (SELECT MIN(timestamp) AS mt FROM summoners_shell) AS mt ON (s1.timestamp = mt.mt)
SET
summonerId = ".$s.",
timestamp = ".$time."

关于mysql - 用最小值sql更新行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32001933/

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