[IIF函数在查询访问中

问题描述 投票:-1回答:1

我总是收到错误消息“您试图执行不包含指定表达式作为聚合函数一部分的查询。”

Expr1:

IIf([Expiry Date]=Date(),"Due today","Not Yet Due")

我也想计算所有截止日期。正确的表达方式是什么。

希望有人可以提供帮助。谢谢

function ms-access iif
1个回答
0
投票

您显然正在尝试创建汇总查询。必须为每个字段或表达式分配一个聚合函数。在这种情况下,似乎需要GROUP BY计算字段的结果,这意味着要包括在聚合查询的SELECT和GROUP BY子句中。然后,聚合可以通过两个值“今天到期”和“尚未到期”来计数。

SELECT IIf([Expiry Date]=Date(), "Due today", "Not Yet Due") AS Status, Count(*) AS CountStatus 
FROM tablename 
GROUP BY IIf([Expiry Date]=Date(), "Due today", "Not Yet Due");

然后我希望只考虑将来的[到期日期]。WHERE [Expiry Date] >= Date()

© www.soinside.com 2019 - 2024. All rights reserved.