假设我有以下select语句,它返回第一次出现dog=0的位置insert_time:
SELECT mammal, id
FROM mytable
WHERE dog = 0
AND insert_time > "2012-02-09 00:00:00"
LIMIT 0, 1
然后我想更新该行,以便mammal = 1仅在哺乳动物尚未更新的情况下=1。我目前知道如何做到这一点的唯一方法是在 PHP 中获取数组,检查哺乳动物元素,然后UPDATE对行运行另一个 mysql 语句。
UPDATE mytable
SET mammal = 1
WHERE id = selectidfromabove
有没有办法可以在一个 mysql 语句中完成这一切,也许将SELECT上面的语句包装在一个UPDATE语句中?