こんにちは、これは私のデータベースの2つのテーブルです:
一定の期間、利用可能なホテルを取得しようとしています。部屋のテーブルでは、部屋のタイプが定義されています: 例: Signe:max_guests=1, Triple: max_guests=3 したがって、10 人の予約には次のようなものが必要です:
SELECT SUM(rooms.max_guests * av.RoomAvailable) AS maxPeople
FROM av AS av INNER JOIN rooms
ON av.room = rooms.ID AND av.DateofDays BETWEEN '09/28/2012' AND '10/03/2012'
GROUP BY av.userid
HAVING Count(*) >= 6
しかし、これは私の要件に実際には適合しません..利用可能な合計max_people / userIDが返されます.userID(ホテル)ごとに> = 10(max_people)が利用可能かどうかを毎日確認する必要があります
助けてくれてありがとう
更新:このクエリを使用する場合:
SELECT av.userid, av.DateofDays, SUM(rooms.max_guests *
av.RoomAvailable) AS maxPeople
FROM av AS av INNER JOIN rooms
ON av.room = rooms.ID AND av.DateofDays BETWEEN '09/28/2012'
AND '10/03/2012'
GROUP BY av.userid, av.DateofDays
ORDER BY av.userid, av.DateofDays
私はこれを得る: