2

我有这个运行完美的查询

从这个查询中,我选择了距离我所在位置 3 公里的所有餐厅,这是我的第一张桌子。

SELECT foodjoint_id,foodjoint_name,open_hours,cont_no,address_line,city ( 3959 * acos( cos( radians('".$userLatitude."') ) * cos( radians( foodjoint_latitude) ) * cos( radians( foodjoint_longitude) - radians('".$userLongitude."') ) + sin( radians('".$userLatitude."') ) * sin( radians( foodjoint_latitude) ) ) ) AS distance
FROM provider_food_joints
HAVING distance < '3' ORDER BY distance LIMIT 0 , 20

但我需要从这 3 公里内的那些食品联合中选择 AVG 等级。

查询也运行良好:

select AVG(customer_ratings) from customer_review where foodjoint_id=".$foodjoint_id 

但我需要添加这两个查询,通过它我可以选择所有这些食品联合及其评级 AVG。

4

1 回答 1

1

只需放置子查询,您就会得到结果:

`SELECT foodjoint_id,foodjoint_name,open_hours,cont_no,address_line,city ( 3959 * acos( cos( radians('".$userLatitude."') ) * cos( radians( foodjoint_latitude) ) * cos( radians( foodjoint_longitude) - radians('".$userLongitude."') ) + sin( radians('".$userLatitude."') ) * sin( radians( foodjoint_latitude) ) ) ) AS distance,

(select AVG(customer_ratings) from customer_review where customer_review.foodjoint_id=provider_food_joints.foodjoint_id) as Customer_Reviews

 FROM provider_food_joints 

HAVING distance < '3' ORDER BY distance LIMIT 0 , 20`
于 2012-05-05T11:14:55.513 回答