weixin_49854157 2023-04-11 22:39 采纳率: 0%
浏览 88

ACCESS的IIF判断条件过长导致结果不正确

SQL文是在VBA代码里面循环拼接的,项目来源于一个输入的文档,其中有一段如下:

SELECT
IIF(项目1+项目2+~+项目100 = TOTAL,"X","O")

现在碰到一个问题,IIF判断条件中项目过多的时候(目前是超过93个,ISNULL之类的判断对个数有影响)这个IIF的结果就变得不正确。目前试过以下方法
1)将项目用括号括起来

SELECT
IIF((项目1+项目2)+ ~ +(项目99+项目100) = TOTAL,"X","O")

这样的结果是有一部分数据不正确,都是小数位特别多的,估计是加括号之后,double类型的数据计算顺序改变,导致结果不正确,所以不行

2)将结果放到查询中再比较

SELECT
项目1+项目2+~+项目100 AS SUM,
IIF(SUM = TOTAL,"X","O")

这样计算似乎也不行,也是有字段过多的问题

  • 写回答

2条回答 默认 最新

  • CQ.abc 2023-04-12 00:14
    关注

    拆分成多个小组进行计算,再用川F函数进行比较试试。
    SELECT 川F(项目1+项目2+...+项目50=TOTAL, "X", "O") & 川F(项目51+项目52+...+项目93=TOTAL, "X", "O") AS 判断结果 FROM 表名;

    评论

报告相同问题?

问题事件

  • 创建了问题 4月11日

悬赏问题

  • ¥15 三分类机器学习模型可视化分析
  • ¥15 本地测试网站127.0.0.1 已拒绝连接,如何解决?(标签-ubuntu)
  • ¥50 Qt在release捕获异常并跟踪堆栈(有Demo,跑一下环境再回答)
  • ¥30 python,LLM 文本提炼
  • ¥15 关于将inet引入的相关问题
  • ¥15 关于一个倒计时的操作和显示设计
  • ¥15 提问STK的问题,哪位航天领域的同学会啊
  • ¥15 苹果系统的mac m1芯片的笔记本使用ce修改器使用不了
  • ¥15 单相逆变的电压电流双闭环中进行低通滤波PID算法改进
  • ¥15 关于#java#的问题,请各位专家解答!