gpt4 book ai didi

mysql - mysql 中两点之间的距离不起作用?

转载 作者:行者123 更新时间:2023-11-29 05:10:23 24 4
gpt4 key购买 nike

编辑:我检查了其他问题,但没有人使用这个公式

我有包含 2 个值 (x,y) 的行。我还有一个点,就是一定半径的圆心。我想检查此点与我的行的点坐标之间的距离是否小于半径。我正在尝试应用两点之间的距离公式来计算中心点和行点之间的距离,并确定行位置是否在圆的半径内(< radius):

var query = "SELECT * FROM table WHERE SQRT((POWER("+x+",2)-POWER(location_x,2))+(POWER("+y+",2)-POWER(location_y,2))) < " + radius;

由于某种原因,这不起作用,尽管更改了行的点坐标,但没有返回任何行。有什么想法吗?

公式中的坐标可能有负值。在我们的测试样本中,他们这样做。

最佳答案

我很确定你的 Cartesian distance formula不正确。

你需要的公式是:

sqrt( (x - location_x)^2 + (y - location_y)^2 )

这会像这样转换成 SQL:

 SELECT * 
FROM table
WHERE SQRT( (POWER("+ x + "-location_x,2))
+(POWER("+ y + "-location_y,2))
) < " + radius

关于mysql - mysql 中两点之间的距离不起作用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40330591/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com