在MySQL查询中添加附加条件



我需要一些MySql查询的帮助。我现有的查询返回所有以100001作为query_id的行,按priceperadult ASC排序。

但是,我希望它只返回每家酒店的最佳价格,所以需要在语句中添加,以便每家酒店只显示一个价格,实现这一目标的最佳方法是什么?

SELECT * FROM `search_results` WHERE `query_id` = '100001' ORDER BY `priceperadult` ASC
示例数据

query_id, priceperadult, hotel_name

100001, 100,酒店1

100001, 200,1号酒店

100001, 100,酒店2

100001, 200,2号酒店

听起来你想使用min():

SELECT query_id, MIN(priceperadult), hotel_name
FROM search_results 
WHERE query_id = '100001' 
GROUP BY query_id, hotel_name

最新更新