У меня есть следующий запрос MySQL, который получает все заказы для агента и все комнаты для бронирования и выполняет некоторые простые вычисления:
Select a.code, a.name, a.areacode, a.agentgroup,
Sum(br.basicprice) As TotalRevenueYTD,
Sum(b.adults + b.children + b.infants) As Pax,
Count(br.bookingref) As Bookings
From booking_record br
Inner Join agent a On br.agentref = a.code
Inner Join bookingroom b On b.bookingref = br.bookingref
Where br.bookingdate > '2011-01-01' And br.bookingdate < Date(Now())
Group By br.agentref
Таблицы представлены так, как для booking_record1 агент (agentref -> a.code).У агента может быть много бронирований, а в бронировании может быть много комнат.В этом конкретном случае мой доход и бронирование отображаются неверно, потому что, если в одном бронировании более 1 комнаты, строка возвращается более одного раза (и, как таковая, базовая цена учитывается дважды, резервирование учитывается дважды и т. Д.).
Есть идеи, как вернуть верную информацию?
Спасибо, Даниэль.