我试图从我的数据库中选择属于用户10米范围内的企业。测试表明,问题在于我的查询(尽管没有引发MySQL错误)。变量$ lat和$ lng是从Javascript导入的,它们也可以。我怀疑这个问题与我使用BETWEEN有关,因为这是我第一次使用它。有任何想法吗?我的MySQL查询有什么问题? (使用BETWEEN)
$r = 20; // in miles
$lat_min = $lat - ($r/69);
$lat_max = $lat + ($r/69);
$lng_min = $lng - $r/abs(cos(deg2rad($lat)) * 69);
$lng_max = $lng + $r/abs(cos(deg2rad($lat)) * 69);
$query = "SELECT name FROM businesses WHERE $lat BETWEEN $lat_min AND $lat_max $lng BETWEEN $lng_min AND $lng_max ORDER BY Rand() LIMIT 6";
... WHERE 1 BETWEEN 2 AND 3'就是你基本上产生的东西。你不是在与一个领域进行比较,而是在对数字进行比较,这是毫无用处的。 –