0

我正在尝试从我的数据库中提取两个值之间的经度和纬度值(存储为 decimal(10,6) ),但由于某种原因,其中一个值没有返回任何结果。

这是我的查询:

SELECT * FROM `location` WHERE location_latitude BETWEEN 53.76200 AND 53.765000 AND location_longitude BETWEEN -2.710000 AND -2.720000

当我只查询纬度时,我得到的结果很好。问题似乎只在于经度。我对这一切还是很陌生,但它可能与经度值之前的减号有关吗?

提前致谢!

4

2 回答 2

5

更改参数的顺序BETWEEN

AND location_longitude BETWEEN -2.720000 AND -2.710000

由于-2.72小于-2.71

于 2013-04-25T19:06:26.467 回答
1

location_longitude BETWEEN -2.710000 AND -2.720000返回真当且仅当 -2.71 <= 经度 <= -2.72。该表达式始终返回 false,因为 -2.72 < -2.71。切换两个值。

MySQL 的文档之间。

于 2013-04-25T19:06:51.137 回答