mysql查询返回具有列的MAX值的记录

时间:2017-10-28 11:03:05

标签: mysql nested-query

我目前正在使用由此数据库架构表示的数据库。

数据库架构

enter image description here

在这里,我想要一个查询来获得具有最高评级值的住宿名称,该住宿名称具有房间ID,其中每人的价格小于给定值。

评级表的样本数据

Ex:我想得到的酒店名称有一个人均价格低于50美元的房间,位于纽约,评级最高。 Sample rating table

1 个答案:

答案 0 :(得分:0)

我没有对它进行过测试,但是后续查询应该有效:

select ac.name as hotel
from accomodation ac
inner join room r
on r.accomodation_id = ac.accomodation_id
inner join rating ra
on ra.rating_id = ac.rating_id
where 
ac.destination_id in (select destination_id from destination where name = 'New York')
and 
r.room_id in (select room_id from room where price_per_head < 50)
order by ra.value desc
limit 1;