simply this would do
SELECT h.H_NAME, r.NOOFROOMS
FROM
(SELECT HOTEL_NO,COUNT(ROOM_NO) AS NOOFROOMS
FROM ROOM
GROUP BY HOTEL_NO)r
INNER JOIN HOTEL h
ON h.HOTEL_NO = r.HOTEL_NO
ORDER BY h.H_NAME
or this if you're on SQL 2005 or above with compatibility level at least 90
SELECT DISTINCT h.H_NAME, COUNT(r.ROOM_NO) OVER (PARTITION BY h.HOTEL_NO) AS NOOFROOMS
FROM ROOM r
INNER JOIN HOTEL h
ON h.HOTEL_NO = r.HOTEL_NO
ORDER BY h.H_NAME
------------------------------------------------------------------------------------------------------
SQL Server MVP
http://visakhm.blogspot.com/