sql,搜索半径为22的城镇

时间:2013-07-04 21:48:10

标签: mysql minecraft

只是一个简单的问题。

我创造了一个小地图,我只需要距离22个地方不远的城镇(来自城镇表)。我有每个城镇的int x和y,我用它们来确定城镇的位置。

首先我想到的是使用WHERE x< 56和x> 34 ...但我不知道剂量sql有这个选项,所以我想问我怎么才能得到22个县以外的城镇。

查询:

'SELECT (id,x,y) 
FROM towns 
WHERE x >= \''.($x-22).'\' 
AND x <= \''.($x+22).'\' 
AND y >= \''.($y-22).'\' 
AND y <= \''.($y+22).'\''

错误是: 错误是警告:mysqli_fetch_array()期望参数1为mysqli_result,布尔值在 -

中给出

2 个答案:

答案 0 :(得分:1)

你绝对可以使用:

WHERE x < 56 AND x > 34

还有BETWEEN

WHERE x BETWEEN 35 AND 55

BETWEEN具有包容性,因此相当于&gt; = AND&lt; =

答案 1 :(得分:1)

(here_x-there_x)*(here_x-there_x) + (here_y-there_y)*(here_y-there_y) < 22*22

毕达哥拉斯救援!