gpt4 book ai didi

mysql - SQL - 仅当子查询不为空时更新

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

我只想在 car_log 中有没有状态“测试”的条目时更新 last_test_date,我真的认为这段代码很糟糕,有什么办法可以更好地编写它吗?

UPDATE car SET last_test_date = 
(SELECT date FROM car_log WHERE car_log.car_id = car.id AND
car_log.status != 'test' ORDER BY date DESC LIMIT 0,1)
WHERE (SELECT COUNT(*) FROM car_log WHERE car_log_id = client.id AND
car_log.status != 'test') > 0;

最佳答案

使用@@ROWCOUNT获取最后查询的行数,这样就不会重复select了

...
WHERE @@ROWCOUNT > 0;

关于mysql - SQL - 仅当子查询不为空时更新,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30357325/

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