我有一个基于为uni项目设置的酒店预订网站的关系数据库模型,但是我被一个查询困扰。
据我所知:
SELECT DISTINCT
property.property_id,
property_name,
property_description,
star_rating,
room_base_price
FROM
property
INNER JOIN rooms ON property.property_id = rooms.property_id;
问题是我的数据库中列出了每个属性的几个房间。在此查询中,我想选择每间酒店最低价格的房间。我目前正在这样做,它显示每个房间的每个房产及其个人价格。
任何人都可以告诉我如何编写查询,我将能够返回房产(即酒店)房间的最低价格,其中每个酒店只有一排而不是返回多行对于每个房产?
答案 0 :(得分:0)
尝试以下查询:
SELECT DISTINCT
property.property_id,
property_name,
property_description,
star_rating,
room_base_price
FROM
property
INNER JOIN rooms ON property.property_id = rooms.property_id;
where (rooms.property_id,rooms.room_base_price) in
(select property_id,min(room_base_price)
from rooms
group by property_id
)
;
希望它有所帮助!