2011-11-11 89 views
0

我正在使用PHP。這是我的查詢:如何從表中檢索數據?

$sql = "SELECT * 
     from place as s 
     where checkDistance($lati1,$longi1,s.lat,s.lon)<$dist"; 

這個地方的表有三個字段:placeId地名地址。現在我想計算placeId的等級,這是以上查詢的結果。爲了計算評價我有另一個表評級,其中有兩個字段:placeIdnoOfPerson

評分將由(noOfPerson/maximum_no_of_person)每個placeId來計算。我怎樣才能實現這個?

回答

2

你的查詢可以做大部分工作在這裏,從place表的人加入了數每個地方,由排名需要,上下有序,這將選擇值:

SELECT s.placeid, s.PlaceName, s.Address, r.noOfPerson 
FROM place as s JOIN rating as r ON (s.placeid = r.placeid) 
WHERE checkDistance($lati1,$longi1,s.lat,s.lon) 
ORDER BY r.noOfPerson/(SELECT MAX(noOfPerson) FROM rating) DESC