【发布时间】:2017-09-20 15:31:06
【问题描述】:
我正在尝试在 access 中运行下面的 sql 查询。我不断收到 MS Access 错误:
“您尝试执行的查询不包含作为聚合函数的一部分的指定表达式 'ID'”
我写的查询如下:
SELECT Subject.ID, Subject.Description, Max(DataSets.ID) AS ID_DataSets
FROM Subject
INNER JOIN DataSets ON Subject.Description = DataSets.Subject.Value
GROUP BY Subject.ID, Subject.Description;
【问题讨论】:
-
你确定这个关系 Subject.Description = DataSets.Subject.Value 吗?
-
MS Access 只能在表名/别名和字段之间使用一个句点限定符,除非用括号或反引号转义。请解释
DataSets.Subject.Value。 -
Chetan Vasudevan - 是的,我很确定这种关系。如果它是链接 2 个表的“ID”,我会喜欢它,但不幸的是我没有创建表
-
@Parfait - DataSets 表上的“主题”字段是一个多值字段,我需要显示单个值
-
我建议不要使用多值字段(偏离关系数据库的规范化模型)。使用在 SQL 查询中效果更好的一对多连接表。