【发布时间】:2015-05-08 13:55:51
【问题描述】:
我正在尝试在 Microsoft Access 中创建一个 SQL 查询,该查询将为下面的每个字段生成最大值/最小值并返回相应的大小写
**Force Table**
case Flxmax Flxmin Frxmax Frxmin
hs00p16010od 582.24 666.81 796.44 -451.15
hs00p16015od 878.7 878.7 1096.3 -500.36
hs00p16020od 1071.95 1071.9 1281.2 -743.05
hs00p16025od 1186.65 1186.6 1397.8 -959.36
期望的输出
Flxmax 1186.65 hs00p16025od
Flxmin 666.81 hs00p16010od
Frxmax 1397.8 hs00p16025od
Frxmin -959.36 hs00p16025od
当前代码(仅最大化 1 个字段,不能为相同的值选择 1 个最大值)
SELECT case, [Flxmax]
FROM Force
WHERE [Flxmax] = (SELECT max([Flxmax]) FROM Force);
此外,如果有多个相同的最大值/最小值,是否可以只选择一个。
关于表格,总共有 40 个字段,包括此处显示的需要计算最大值/最小值的字段。记录/病例数约为30,000。
我有 14 个类似的表,我需要对它们运行类似的查询(案例名称,以相同的顺序,在所有表中都很常见)。正如您可以想象的那样,我希望将必要的查询数量保持在最低限度。
如果 Access SQL 有限制,是否可以使用 VBA 来完成?
【问题讨论】:
-
我正试图绕过这个,因为它是一个非常奇怪的模式。至于你的问题
if there are multiple identical max/min values is there a way to pick just one这真的取决于你。你会用什么方法来选择一个?也许 Max(case) 或 Min(case) 获胜?