gpt4 book ai didi

mysql - 如果为空或计算值,则将设置 col 更新为 0.00

转载 作者:行者123 更新时间:2023-11-29 08:17:53 25 4
gpt4 key购买 nike

如果列为 NULL,我尝试将其设置为 0.00,或者如果列不为空,则将其设置为计算值。

在下表中,可能并不总是设置最高分数,并且百分比列有时会显示 NULL,这在前端显示中看起来很奇怪。

我尝试了下面的sql,它没有抛出任何错误,也不起作用,这意味着出了问题。

我该如何正确设置?

表格

"studentId" "maxScore"  "studentScore"  "stdPerCent"
"1" "100" "25" "25.00"
"2" "0" "0" NULL

SQL

update scores SET stdPerCent = if(NULL,'0.00',TRUNCATE(100*studentScore/maxScore,2));

最佳答案

我发现 COALESCE 比 CASE WHEN 更容易使用(和阅读):

UPDATE scores 
SET stdPerCent = COALESCE(TRUNCATE(100*studentScore/maxScore,2), '0.00')

编辑:如果您只是尝试填充 NULL 字段并且您知道非 NULL 字段已经正确计算,那么这会更有意义:

UPDATE scores 
SET stdPerCent = '0.00'
WHERE stdPerCent IS NULL

关于mysql - 如果为空或计算值,则将设置 col 更新为 0.00,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20197114/

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