1

我想创建一个 sql 查询,让我在表中最常用的 id 中排名前 5。我的表有这些列:

reservationid
costumerid
roomid
hotelid

我正在尝试获得最常用的酒店 ID 的前 5 名。

我以为我必须使用计数功能,但这似乎不起作用。它只计算所有的hotelid,并没有看到id之间的区别

select count(hotelid) from reservation;

有人可以帮我把我推向正确的方向吗?

提前致谢!

4

1 回答 1

2
SELECT COUNT(`hotelid`) AS `freq`, `hotelid` 
        FROM `reservation` 
    GROUP BY `hotelid` 
    ORDER BY `freq` DESC LIMIT 5 ;
于 2012-07-06T22:29:19.023 回答