Hi I have 3 tables which are (flight, model, airplane) Flight: fid, pid, aid, plannedDeparture, actualDeparture, passengerCount, destination Model: mid, name Airplane: aid, mid, oid, hid, dateAqu and I want to get a report to show the total number of flights and the average passenger count for all completed flights grouped by Model.id and sorted by the average passenger count. Include Model.name into this report. I tried this query, but it doesn't work. it made me crazy select distinct flight.fid, flight.aid, flight.pid, flight.plannedDeparture, flight.actualDeparture, flight.passengerCount, flight.destination, airplane.aid, airplane.mid, model.mid, model.name from flight, model, airplane where flight.aid = airplane.aid and airplane.mid = model.mid GROUP BY model.mid and (select COUNT(flight.fid) as `count`, AVG(flight.passengerCount) as `average` FROM flight);
select model.mid, model.name, count(flight.fid) as flightcount, AVG(flight.passengerCount) as avgPC from flight, model, airplane where flight.aid = airplane.aid and airplane.mid = model.mid GROUP BY model.mid order by avgPC Code (markup): give that a go or set up some sample data in http://sqlfiddle.com/ for us to play with