Microsoft Access设计视图:查询值高于平均值的ID方法咨询
解决Access设计视图中筛选Value高于平均值的ID记录问题
我之前在Access里做类似需求时也踩过坑,直接在设计视图里用平均值筛选确实不能一步到位,得拆成两个查询来做,完全不用写SQL,跟着步骤来就行:
第一步:创建计算整体平均值的查询
- 打开Access,切换到「创建」选项卡,点击「查询设计」
- 在弹出的「显示表」窗口里选中你的数据表,添加到设计界面后关闭窗口
- 点击「设计」选项卡上的汇总按钮(Σ图标),这时候设计界面会多出一行「汇总」
- 在字段行的第一个空白单元格里输入:
AvgValue: Avg([Value]) - 把这个字段对应的「汇总」行选项从默认的「Group By」改成「Expression」
- 保存这个查询,比如命名为
qry_TotalAvg(名字随便取,只要自己能识别就行)
第二步:创建主筛选查询
- 再次打开「查询设计」,这次同时添加你的原始数据表和刚才保存的
qry_TotalAvg查询 - 从原始数据表中把
ID字段拖到字段行(这是我们最终要显示的内容) - 再把原始数据表的
Value字段拖到下一个字段单元格,然后在这个字段的「条件」行输入:>[qry_TotalAvg].[AvgValue] - 如果你不想在结果里显示
Value列,取消这个字段对应的「显示」复选框就行 - 点击设计界面左上角的「运行」按钮(!图标),就能看到所有
Value高于整体平均值的ID记录了
额外注意事项
- 因为
Value是Access的保留字,操作时一定要给它加方括号[Value],避免系统识别出错 - 确保第一步的平均值查询只返回一个结果(也就是整个表的Value平均值),如果它返回多条记录,说明你可能误加了分组字段,回去检查一下汇总行的设置
- 如果运行时提示关联错误,不用管,因为我们不需要两个查询之间建立关联,直接按上面的条件输入就行
内容的提问来源于stack exchange,提问作者tal porcilan
相关产品推荐
相关产品推荐

