Изображение отношений и полей таблиц
Мне очень трудно создать запрос, в котором я хочу отсортировать свой запрос в соответствии со средним значением в другой таблице. У меня есть таблица tblHotels с HotelID, HotelName, PricePerNight, LeftCoordinate и TopCoordinate, а также таблица tblRatings с HotelID и HotelRating (от 1 до 10 от разных пользователей / несколько оценок).
Я хочу, чтобы мой запрос отображался все отели, в которых PricePerNight (из tblHotels) находится в заданном диапазоне (МЕЖДУ нижним значением И верхним значением), чтобы отобразить, а затем отсортировать его по их рейтингам в tblRatings.
SELECT tblRatings.HotelID
, tblHotels.HotelName
, LeftCoordinate
, TopCoordinate
, AVG(HotelRating) AS Rating
FROM tblRatings, tblHotels
WHERE ( SELECT HotelID
FROM tblHotels
WHERE PricePerNight BETWEEN LowerValue AND UpperValue) =
tblRatings.HotelID
GROUP BY tblRatings.HotelID
ORDER BY AVG(HotelRating) DESC
SELECT tblRatings.HotelID
, HotelName
, LeftCoordinate
, TopCoordinate
, AVG(HotelRating) AS Rating
FROM tblHotels, tblRatings
WHERE (PricePerNight BETWEEN LowerValue AND UpperValue) AND (tblHotels.HotelID = tblRatings.HotelID)
GROUP BY tblRatings.HotelID
ORDER BY AVG(HotelRating) DESC
Я пробовал подзапрос и связанный запрос таблицы, но оба дают мне ошибку «HotelName не является частью агрегатной функции»
Я искал в Интернете, чтобы попытаться найти решение, но безуспешно: (