You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

参数驱动数据更新逻辑错误修正及需求咨询

问题修复方案

问题根源

当前更新逻辑仅检查premi1.Text是否为空,但premi1.Text = "0"并非空值,因此逻辑会错误地优先使用premi1的0值,忽略了premi5的有效非零数值。

需求匹配逻辑

根据需求,应遵循以下优先级:

  • 优先使用premi5的值,当它非空且不为0时
  • 若premi5无效(空或为0),再使用premi1的值,当它非空且不为0时
  • 若两者均无效,可默认设为0(或根据业务需求保留原数据)

修正后的SQL语句

UPDATE MY_TABLE 
SET Value = 
    CASE
        -- 优先验证premi5的有效性
        WHEN NOT String.IsNullOrEmpty(premi5.Text.Trim()) 
             AND premi5.Text.Replace(",", "") != "0"
            THEN premi5.Text.Replace(",", "")
        -- 再验证premi1的有效性
        WHEN NOT String.IsNullOrEmpty(premi1.Text.Trim()) 
             AND premi1.Text.Replace(",", "") != "0"
            THEN premi1.Text.Replace(",", "")
        -- 两者都无效时的默认值
        ELSE "0"
    END
WHERE ID = 1

效果验证

在给定参数场景下:

  • premi5.Text = "10,710,000":非空,去除逗号后为"10710000"(非0),因此会被选中作为更新值
  • 最终Value会被正确更新为10710000(无逗号格式)

内容的提问来源于stack exchange,提问作者Babo

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.13 11:09:53