我有一个表格,其中包含 foodjoint 数据及其纬度和经度。
我正在使用这个查询
$q = "SELECT (
(ACOS(SIN( ".$userLatitude." * PI() / 180) * SIN(foodjoint_latitude * PI() / 180) + COS(".$userLongitude." * PI() / 180) * COS(foodjoint_longitude * PI() / 180) * COS((foodjoint_longitude - ".$longitude.") * PI() / 180)) * 180 / PI()) * 60 * 1.1515 * 1.609344) AS distance
, foodjoint_id
, foodjoint_name
, open_hours
, cont_no
, AVG(customer_ratings) AS rating
, address_line
, city
FROM provider_food_joints,customer_review HAVING distance <=3";
$userLatitude 和 $userLongitude 是用户的位置。我希望以公里为单位比较距离。提前谢谢。我想显示半径 3 公里以下的 foodjoint 数据。
当我刚刚运行它时,它不会选择任何行。但是如果没有这个条件,它会获取所有记录。