SQL BETWEEN语句没有返回任何结果


SQL BETWEEN statement not returning any results?

我试图从数据库(以十进制(10,6)的形式存储)中提取两个值之间的经度和纬度值,但由于某种原因,其中一个值没有返回任何结果。

这是我的查询:

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

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

提前感谢!

修改BETWEEN的参数顺序:

AND location_longitude BETWEEN -2.720000 AND -2.710000

由于-2.72小于-2.71

location_longitude BETWEEN -2.710000 AND -2.720000在-2.71 <= longitude <= -2.72时返回true。表达式总是返回false,因为-2.72 <-2.71。切换两个值