sql - 访问 SQL IIF 语句未正确评估
问题描述
我有一个使用iif
未正确评估的语句的 Access SQL 查询。我看不出这iif
句话有什么问题。
下面的 SQL 代码产生了它下面的表。
SELECT PR,
G21_Start AS Genesis_Date,
SWITCH(G21_comp IS NULL, 2.1,
G22_comp IS NULL, 2.2,
G31_comp IS NULL, 3.1,
G32_comp IS NULL, 3.2,
G33_comp IS NULL, 3.3,
G4_comp IS NULL, 4,
1=1, 0) AS Current_Gate,
DSUM ("Goal", "qry_Gate_Status", "Gate <= " & Current_Gate & " AND PR
= '" & PR & "'") AS Target_Days,
(DATE() - G21_Start) AS Elapsed,
IIF (Elapsed > Target_Days, "Overdue", "On Track") AS Contract_Health
FROM qry_Gate_Status_Extended;
结果:
PR Genesis_Date Current_Gate Target_Days Elapsed Contract_Health
AA 3/8/2019 2.1 45 90 Overdue
AB 1/1/2019 3.1 73 156 On Track
BB 5/1/2019 2.2 59 36 On Track
BC 9/19/2018 2.1 45 260 On Track
什么时候Elapsed
大于应该是Target_Days
,否则它应该是。 Contract_Health
"Overdue"
"On Track"
如您所见,结果并不一致。我注意到的一件事是Target_Days
(的结果DSUM
)像文本字段一样左对齐,而不是右对齐为数字。我一定是忽略了什么。
谢谢你的帮助。
解决方案
我使用 VAL() 函数将我认为的数字转换为实际数字并且它有效。
VAL(DSUM ("Goal", "qry_Gate_Status", "Gate <= " & Current_Gate & " AND PR
= '" & PR & "'")) AS Target_Days
谢谢你的提示!!!你们真棒!!!
推荐阅读
- python - ImportError: No module named citations
- sql - 在 SQL 中,如何将“ALL”作为 M 和 F 返回
- python - 政权转换多元garch
- kotlin - 不同类中的 CoroutineScope 扩展函数
- c - 为什么 c 库和语言定义 _name 然后 typedef 或 pound 定义 _name 名称?
- sql - SELECT * FROM table 除了聚合函数
- database - 如何在 JaguarDB 中存储空间数据
- java - 如何将 JPanel 放在 JFrame 的前面
- ios - Firebase 值未更新?
- jquery - jQuery $.getJSON 发送字符串