如何:高级访问查询,基于两个用户输入和两个字段进行计算

时间:2015-12-08 18:41:15

标签: sql user-input

我想在Access表上运行查询。该表有一列X和一个Y坐标列。我希望用户能够运行查询,提示输入他们自己的X和Y坐标,然后查询将返回从用户输入的X和Y最近到最远的新表。这是一个在我的联盟中脱颖而出,任何帮助实现这一目标的人都会非常感激。

为了更好地理解我所说的内容,现有的表格可能如下所示:

PrimaryKey----------X----------Y

--------------1----------1----------2

--------------2----------7----------9

--------------3---------26---------31

我希望查询提示用户给出X和Y.如果用户输入X = 8,例如Y = 6,查询将计算点之间的距离:

sqrt((1-8)^2+(2-6)^2)=8.06

sqrt((7-8)^2+(9-6)^2)=3.16

sqrt((26-8)^2+(31-6)^2)=30.81

然后根据这些数字返回:

PrimaryKey----------X----------Y

--------------2----------7----------9

--------------1----------1----------2

--------------3---------26---------31

1 个答案:

答案 0 :(得分:0)

用用户输入替换8和6,用字段引用替换其他数字。

SQR( ((X - [User Input for X]) ^ 2) + ((Y - [User Input for Y]) ^ 2) )