gpt4 book ai didi

使用 lat 和 lng 小数搜索时,MySQL 查询返回 0 行

转载 作者:行者123 更新时间:2023-11-30 23:23:12 25 4
gpt4 key购买 nike

我正在尝试执行此查询:

SELECT  `venues` . * 
FROM `venues`
WHERE `lat` >= 39.847991180331
AND `lng` >= -86.332592054637
AND `lat` <= 40.137846252794
AND `lng` <= -85.954901904578
LIMIT 0 , 30

这是 lat 和 lng 字段的表结构和示例行,它应该至少返回 1 行

lng decimal(65,15)                              
lat decimal(65,15)

Name Lng Lat
Ambre Blends Studio -86.143746979607530 39.875314973898870

但是,当我执行上述查询时,它没有返回任何行。这里有什么问题?

最佳答案

我一直对浮点相等和不等运算持谨慎态度,MySQL 过去曾有过此类问题的历史(我不确定您使用的是哪个版本,但周围进行了一些更改503/505)。

我要做的第一件事是调试实际语句。开始于:

select venues.* from venues
where name like 'Ambre%'

并确保你只得到一行(如果有很多行以 Ambre 开头,你可能需要调整 where 子句)。

然后一次一个地添加其他子句,直到该行不出现为止。第一个是:

select venues.* from venues
where name like 'Ambre%'
and lat >= 39.847991180331

一旦确定哪个条件导致select失败,您就可以开始调查原因了。

关于使用 lat 和 lng 小数搜索时,MySQL 查询返回 0 行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14638045/

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