Using PHP and MySQL, I want to query a table of postings my users have made to find the person who has posted the most entries.

What would be the correct query for this?

Sample table structure:

[id] [UserID]
1     johnnietheblack
2     johnnietheblack
3     dannyrottenegg
4     marywhite
5     marywhite
6     johnnietheblack

I would like to see that "johnnietheblack" is the top poster, "marywhite" is second to best, and "dannyrottenegg" has the least

Comments

Can you provide the table structure for the postings table?

Written by JohnFx

Yup, that would help ;-)

Written by lothar

totally...check edit in one minute:)

Written by johnnietheblack

Accepted Answer

Something like:

SELECT COUNT(*) AS `Rows`, UserID
FROM `postings`
GROUP BY UserID
ORDER BY `Rows` DESC
LIMIT 1

This gets the number of rows posted by a particular ID, then sorts though the count to find the highest value, outputting it, and the ID of the person. You'll need to replace the 'UserID' and 'postings' with the appropriate column and field though.

Written by Alister Bulman
This page was build to provide you fast access to the question and the direct accepted answer.
The content is written by members of the stackoverflow.com community.
It is licensed under cc-wiki