gpt4 book ai didi

php - 包含 IF 语句的查询

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

我希望我的查询使用 IF 语句,identify;如果当前的 num_unmarked 在此更新后将变为 0,则还将 is Final 设置为“YES”。

这是我的查询:

 $sql = "UPDATE results_tb 
SET
num_unmarked = num_unmarked - 1,
is_final=IF( num_unmarked-1=0, 'YES', is_final ),
score = score + $awarded
WHERE
user_id = $student
AND
test_id = $test
";

实际发生的情况是,查询运行,num_unmarked 递减并且分数更新,但是即使 num_unmarked 为 1(不是 0),它仍然将 is_final 设置为“YES”。

有人可以告诉我我做错了什么或者启发我更好的方法吗? (我是菜鸟:D)

谢谢,

最佳答案

更新在 MySql 中按顺序处理,因此对 num_unmarked 的更新发生在 IF 语句之前,并且 IF 语句使用新的更新值。所以你实际上想要使用该值,就好像它已经被更新一样,即将它直接与 0 进行比较:

is_final = IF(num_unmarked=0, 'YES', is_final),

关于php - 包含 IF 语句的查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6020029/

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