bradcis Posted November 4, 2009 Share Posted November 4, 2009 Here is what I am trying to accomplish. I have one table that has a bunch of peoples names and numbers. Each person has multiple numbers. I am trying to make display the top 10 users based on their highest numbers. Therefore, each person may only come up once. I am trying to do SELECT DISTINCT(`name`), `number` FROM `users` ORDER BY `number` DESC. However, this will only pull the first row inserted for each user, rather than pull the highest row for each user. I know I can't use DISTINCT() for this very reason, but I am not sure how to go about getting these values. I can't imagine this being that difficult, but I don't have any experience working with MySQL than the most basic queries. Any assistance would be greatly appreciated! Quote Link to comment https://forums.phpfreaks.com/topic/180220-solved-distinct-issues/ Share on other sites More sharing options...
xtopolis Posted November 4, 2009 Share Posted November 4, 2009 SELECT name, MAX(number) FROM users GROUP BY name ORDER BY number DESC LIMIT 10 I found this @: http://dev.mysql.com/doc/refman/5.0/en/example-maximum-column-group.html It seems like it will do what you're trying to accomplish. Quote Link to comment https://forums.phpfreaks.com/topic/180220-solved-distinct-issues/#findComment-950729 Share on other sites More sharing options...
bradcis Posted November 5, 2009 Author Share Posted November 5, 2009 Thank you much, Xtopolis, for your help. That worked perfectly. Quote Link to comment https://forums.phpfreaks.com/topic/180220-solved-distinct-issues/#findComment-951453 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.