我正在使用PHP。这是我的查询:

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


此位置表具有三个字段:placeId,PlaceName和Address。现在,我要计算placeId的等级,这是上述查询的结果。为了计算等级,我还有另一个表格等级,其中有两个字段:placeId和noOfPerson。

评分将由每个placeId的(noOfPerson / maximum_no_of_person)计算。我该如何实施?

最佳答案

您的查询可以在这里完成大部分工作,这将从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

关于php - 如何从表格中检索数据?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/8094781/

10-13 22:13