PHP_Idiot Posted August 12, 2013 Share Posted August 12, 2013 Ok so I have this query: SELECT Venue.VenueName, Venue.VenueID, COUNT( Results.MembershipNo ) AS 'total', COUNT( DISTINCT Results.Date ) AS 'dates', CAST( COALESCE( COUNT( Results.MembershipNo ) / COUNT( DISTINCT Results.Date ) ) AS DECIMAL( 10, 1 ) ) AS 'Average' FROM Position, Player, Results, Venue WHERE Player.MembershipNo = Results.MembershipNo AND Venue.active = 'Y' AND Results.Position = Position.Position AND Venue.VenueID = Results.VenueID AND Results.Date BETWEEN '2013-07-01' AND CURDATE( ) GROUP BY Venue.VenueName ORDER BY Average DESC Which gives this result: VenueNameVenueIDtotaldatesAverage The Globe (Weds)22141623.5The Globe (Weds)22 141 6 23.5The Tawny Owl 16 118 6 19.7The Globe (Mon) 30 110 6 18.3The Duke Of Wellington 28 90 6 15.0The Mother Redcap 26 57 4 14.3The Jolly Milliner 23 79 6 13.2The Old Red Lion 29 545 10.8The Enigma Tavern 24 65 6 10.8The Crown 11 62 6 10.3The Sportsman 31 18 2 9.0The Heath Inn 33 27 3 9.0The Nags Head 32 31 4 7.8 What I really need now is the total of the 'total' column and the total of the 'dates' column so I can divide 'total' by 'dates' to get an average. But everything I try fails, I've used the Sum() function but I can't get it to work properly. Any help would be really appreciated. Cheers Link to comment https://forums.phpfreaks.com/topic/281102-how-do-i-get-the-total-of-this-column/ Share on other sites More sharing options...
Barrikor Posted August 13, 2013 Share Posted August 13, 2013 Have a $totalOfTotals variable that you add to on each fetch. (Assuming that you need to also display the data at the same time) Link to comment https://forums.phpfreaks.com/topic/281102-how-do-i-get-the-total-of-this-column/#findComment-1444676 Share on other sites More sharing options...
Zane Posted August 13, 2013 Share Posted August 13, 2013 Try GROUP BY Venue.VenueName WITH ROLLUP Link to comment https://forums.phpfreaks.com/topic/281102-how-do-i-get-the-total-of-this-column/#findComment-1444678 Share on other sites More sharing options...
PHP_Idiot Posted August 13, 2013 Author Share Posted August 13, 2013 On 8/13/2013 at 12:47 AM, Zane said: Try GROUP BY Venue.VenueName WITH ROLLUP I gave this a go but the results are wrong, as you can see from the table section the 'total' total is correct but the 'dates' total is still only adding the Distinct dates together, rather than the subtotal of each row. Is there a way around this? total dates Average 860 32 26.9 Link to comment https://forums.phpfreaks.com/topic/281102-how-do-i-get-the-total-of-this-column/#findComment-1444719 Share on other sites More sharing options...
PHP_Idiot Posted August 13, 2013 Author Share Posted August 13, 2013 On 8/13/2013 at 12:30 AM, Barrikor said: Have a $totalOfTotals variable that you add to on each fetch. (Assuming that you need to also display the data at the same time) I'm not entirely sure what you mean by this or how I would implement it. I don't have time right now but I will play about with it later this afternoon. Link to comment https://forums.phpfreaks.com/topic/281102-how-do-i-get-the-total-of-this-column/#findComment-1444720 Share on other sites More sharing options...
PHP_Idiot Posted August 13, 2013 Author Share Posted August 13, 2013 On 8/13/2013 at 12:30 AM, Barrikor said: Have a $totalOfTotals variable that you add to on each fetch. (Assuming that you need to also display the data at the same time) Had time to play about with it now, and this has worked: $totalPlayers=$totalPlayers+$r['total']; $totalDates=$totalDates+$r['COUNT( DISTINCT Results.Date )']; $AVE=ROUND($totalPlayers/$totalDates,1); I've now getting exactly the figures I should be, thanks a lot Barrikor Link to comment https://forums.phpfreaks.com/topic/281102-how-do-i-get-the-total-of-this-column/#findComment-1444871 Share on other sites More sharing options...
Recommended Posts
Archived
This topic is now archived and is closed to further replies.