代码之家  ›  专栏  ›  技术社区  ›  njvb

查询两个表中的值,其中一个表属于从一个表中的值计算的范围

  •  0
  • njvb  · 技术社区  · 14 年前

    我有两张桌子。第一个具有列名称、值和偏移量。第二个具有列结果和计算。我想知道是否有一种方法可以在Access中编写一个查询,在Access中我将根据条件选择名称、值、结果和计算结果,所选结果将介于所选值+(offset/2000)和值-(offset/2000)之间。这种关系是多对多的。

    1 回复  |  直到 14 年前
        1
  •  2
  •   Erick Robertson    14 年前

    把桌子连起来就行了。

    SELECT t1.name, t1.value, t2.result, t2.calculation
    FROM   table1 t1, table2 t2
    WHERE  t2.result BETWEEN t1.value + (t1.offset / 2000)
                         AND t1.value - (t1.offset / 2000);
    

    也可以使用绝对值函数。

    SELECT t1.name, t1.value, t2.result, t2.calculation
    FROM   table1 t1, table2 t2
    WHERE  Abs(t2.result - t1.value) <= t1.offset / 2000;