Wildthing Posted May 25, 2013 Share Posted May 25, 2013 I have a simple test table in mysqlfields name, booked,3 entries nick, 1 john, 1 nick, 1I want to echo out the name with the least amounts of booked sumso output should be johncan anyone help ? Quote Link to comment Share on other sites More sharing options...
PravinS Posted May 25, 2013 Share Posted May 25, 2013 Use MIN function in mysql to fetch least amount Refer: http://dev.mysql.com/doc/refman/5.0/en/group-by-functions.html#function_min Quote Link to comment Share on other sites More sharing options...
Jessica Posted May 25, 2013 Share Posted May 25, 2013 You'd need to group them by name, get the sum of each group, then using min. Quote Link to comment Share on other sites More sharing options...
Wildthing Posted May 25, 2013 Author Share Posted May 25, 2013 mysql> select rep_surname, AVG(booked) from appointments group by rep_surname;+-------------+-------------+| rep_surname | AVG(booked) |+-------------+-------------+| nick | 1.0000 || john | 1.0000 |+-------------+-------------+2 rows in set (0.00 sec) But there are 3 rows all all, John has 1 more entry Did I miss something ? I am not real good at this Quote Link to comment Share on other sites More sharing options...
Barand Posted May 25, 2013 Share Posted May 25, 2013 SELECT name, COUNT(*) as tot FROM table GROUP BY name ORDER BY tot LIMIT 1 Quote Link to comment Share on other sites More sharing options...
Wildthing Posted May 26, 2013 Author Share Posted May 26, 2013 So far I have $result = mysql_query("SELECT rep_surname, COUNT(*) as tot FROM appointments GROUP BY rep_surname ORDER BY tot"); Need it to echo the rep_name with the least amounts of "1" in booked fieldkind of stuck Quote Link to comment Share on other sites More sharing options...
Jessica Posted May 26, 2013 Share Posted May 26, 2013 order by DESC and LIMIT 1 Quote Link to comment Share on other sites More sharing options...
Barand Posted May 26, 2013 Share Posted May 26, 2013 order by DESC and LIMIT 1 that gives highest first Quote Link to comment Share on other sites More sharing options...
Jessica Posted May 26, 2013 Share Posted May 26, 2013 I misread, I thought he wanted the highest. Lowest first obviously would be ASC then Quote Link to comment Share on other sites More sharing options...
Barand Posted May 26, 2013 Share Posted May 26, 2013 I gave him the query, can't understand what there is left to be stuck on Quote Link to comment Share on other sites More sharing options...
Jessica Posted May 26, 2013 Share Posted May 26, 2013 I feel ya Quote Link to comment Share on other sites More sharing options...
Wildthing Posted May 27, 2013 Author Share Posted May 27, 2013 Doing my head in lol $result = mysql_query("SELECT rep_surname, COUNT(*) as tot FROM appointments GROUP BY rep_surname order by ASC LIMIT 1");echo $row['rep_surname'];--------------------------------------------- error in apache log PHP Notice: Undefined variable: row in /home/wildthin/public_html/grabbs/test.html on line 10 Quote Link to comment Share on other sites More sharing options...
mac_gyver Posted May 27, 2013 Share Posted May 27, 2013 the error means that you didn't fetch the data from the result set. before you can use php/mysql for your data, you must first learn how to use php/myqsl for any data. you need to read a basic php/mysql tutorial/book so that you understand the steps needed to form an sql query statement, run that query, check if the query executed without any errors, and then fetch any resultant data from that query. Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.