5

I just spent a little time looking at the leader board for History SE. Pretty fun to look at. Impressive as well.

Is there a way to see a snapshot of "all-time" leaders for bounties? a year-by-year comparison might be fun also. By "bounties", I mean a comparison of who has given the most.

Or is this something I will be able to see once I hit 5,000 points?

5

I don't think there is a default report, but you could always create a query using the Stack Exchange Data Explorer.

I haven't got round to playing with this yet, but it looks like it has the potential to be a really useful and informative tool. There are a large number of queries already in the system, so you could probably modify something to meet your needs.


Top 100 Users by Bounties Received

The question Unidentified best bounty hunter? on Meta:SE includes a query that I copied and ran on History:SE:

SELECT Top 100
  Posts.OwnerUserId As [User Link], COUNT(*) As BountiesWon
FROM Votes
  INNER JOIN Posts ON Votes.PostId = Posts.Id
WHERE
  VoteTypeId=9
GROUP BY
  Posts.OwnerUserId
ORDER BY
  BountiesWon DESC

This got the following results for an "All-time Bounties Leaderboard":

Total bounties received by users


Restricting the date may be a little more tricky. I think I can restrict by the post creation date using something like:

WHERE
    votetypeid = 9 and creationdate between 'mm/dd/yyyy' AND 'mm/dd/yyyy'

(remembering to use the US date format), but, of course, a bounty could be awarded long after the actual post was created.


Top 100 Users by Bounties Offered

The pre-existing query Top 100 users ordered by offered bounties gets a list of the users who have offered the most bounties, and the total reputation offered in bounties:

Users by bounties offered


I added a line to restrict the search to a particular date range (in this case I set it to be 1 January 2018 - 31 December 2018):

SELECT TOP(100)
  ROW_NUMBER() OVER (ORDER BY SUM(Votes.BountyAmount) DESC, Users.ID) AS rnSum
  ,ROW_NUMBER() OVER (ORDER BY COUNT(*) DESC, Users.ID) AS rnCount
  ,Users.ID
  ,Users.DisplayName
  ,Users.Reputation
  ,SUM(Votes.BountyAmount) AS BountyOfferedTotal
  ,COUNT(*) AS BountyOfferedCount
FROM
  Votes
  INNER JOIN Posts ON Posts.ID = Votes.PostID
  INNER JOIN Users ON Users.ID = Posts.OwnerUserID
WHERE
  Votes.BountyAmount IS NOT NULL
  AND Votes.VoteTypeID = 8 -- BountyStart
  AND Posts.PostTypeID = 1 -- Question
  AND Votes.CreationDate between '01/01/2018' AND '12/31/2018'
GROUP BY
  Users.ID
  ,Users.DisplayName
  ,Users.Reputation
ORDER BY BountyOfferedTotal DESC, Users.ID
;

This got the following result:

Bounties offered 2018

Changing the date range and re-running the query would then get you your year-by-year comparison.

  • That appears to be bounties won, not bounties offered, but one would imagine if the former is possible, the latter is as well. – T.E.D. Apr 18 at 0:25
  • @T.E.D. Ah, yes. I misread the question. I've updated to include bounties offered. It's always good to actually answer the question that was asked! – sempaiscuba Apr 18 at 0:32
  • ...a lesson I hope to one day learn myself. – T.E.D. Apr 18 at 0:34
  • Cool! So this data is already out there, and can be accessed by the link in your answer. Thanks! I wonder why mine shows "1 Bounty for 500" instead of "9 bounties for 1,000". – axsvl77 Apr 18 at 15:02
2

I don't know the answer to the main thing you're asking. However, this answer goes over the reputation rewards. As we are an ungraduated site, it appears the only privilege you're lacking with 4K < rep < 5k is the ability to see the site analytics.

  • 1
    So at present, the question "Who gave the most bounties?" in 2018 is not answerable? – axsvl77 Apr 17 at 22:43

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .