我试图从我的数据库中提取经度和纬度值(存储为十进制(10,6))在两个值的范围之间,但由于某种原因,其中一个值没有返回任何结果。< / p>
这是我的疑问:
SELECT * FROM `location` WHERE location_latitude BETWEEN 53.76200 AND 53.765000 AND location_longitude BETWEEN -2.710000 AND -2.720000
当我只查询纬度时,我得到的结果很好。这个问题似乎只与经度有关。我对这一切仍然相当新,但它可能与经度值之前的减号有关吗?
提前致谢!
答案 0 :(得分:5)
更改BETWEEN
上的参数顺序:
AND location_longitude BETWEEN -2.720000 AND -2.710000
由于-2.72
小于-2.71
答案 1 :(得分:1)
location_longitude BETWEEN -2.710000 AND -2.720000
返回true iff -2.71&lt; = longitude&lt; = -2.72。表达式总是返回false,因为-2.72&lt; -2.71。切换这两个值。