修改访问中的查询

时间:2009-10-08 13:35:17

标签: ms-access vba

我有一个查询,可以得到像这样的结果

field1  field2  field3  field4  field5
23      gfhf    ghjj       5        49
23      ghf     jkll       6        45
67      bnvn    nmb        7        45
89      gfh     hjj        8        78
89      gfhg    hk         9        23

这里的前2个和后2个记录有点相同。 我想只有一个基于字段4和字段5。 即以4和最大值中的最小值为准 在第5场。

我想要以下结果

field1  field2  field3  field4  field5
23      gfhf    ghjj       5        49
67      bnvn    nmb        7        45
89      gfh     hjj        8        78

由于

2 个答案:

答案 0 :(得分:2)

首先确定字段4的最小值以及要与字段1关联的字段5的最大值。

SELECT field1, Min(field4) AS MinField4, Max(field5) AS MaxField5
FROM Table1
GROUP BY field1;

将此查询另存为,然后将Query1连接回Table1以获取field2和field 3的值。

SELECT Query1.field1, Table1.field2, Table1.field3, Query1.MinField4,
       Query1.MaxField5
FROM   Query1 INNER JOIN Table1 ON (Query1.field1 = Table1.field1) AND
       (Query1.MinField4 = Table1.field4) AND
       (Query1.MaxField5 = Table1.field5);

答案 1 :(得分:0)

为了使您的订购更正,您需要创建一个新的查询,将输入作为您现有的查询。

最简单地调整当前查询,以便按照您希望的方式对结果进行排序,使用field4 Ascending然后field5 Descending

创建一个新查询,选择现有查询中的所有值

在此新查询的设计器中,右键单击并添加总计 为field1选择Group By,然后为所有其他

选择First

这应该做你想要的事情