select
datepart(year, Posts.CreationDate) Year,
datepart(month, Posts.CreationDate) Month,
count(Posts.Id) Questions,
count(Votes.Id) Bounties,
sum(Votes.BountyAmount) Amount
from Posts left join votes
on datepart(year, Posts.CreationDate) = datepart(year, Votes.CreationDate)
and datepart(month, Posts.CreationDate) = datepart(month, Votes.CreationDate)
where PostTypeid = 1 -- 1 = Question
and Votes.VoteTypeId = 9 -- 9 = BountyAwarded
group by datepart(year, Posts.CreationDate), datepart(month, Posts.CreationDate)
order by datepart(year, Posts.CreationDate), datepart(month, Posts.CreationDate);
Does this work?
Please be kind. I wrote this in notepad & haven't worked with data explorer on SO.
EDIT:
select Isnull(V.Year, P.Year) As Year,
Isnull(V.Month, P.Month) As Month,
Isnull(V.Bounties, 0) As Bounties,
Isnull(V.Amount,0) As Amount ,
P.Questions
FROM
(
select
datepart(year, Posts.CreationDate) Year,
datepart(month, Posts.CreationDate) Month,
count(Posts.Id) Questions
from Posts
where PostTypeid = 1 -- 1 = Question
group by datepart(year, Posts.CreationDate), datepart(month, Posts.CreationDate)
) AS P
left JOIN
(
select
datepart(year, Votes.CreationDate) Year,
datepart(month, Votes.CreationDate) Month,
count(Votes.Id) Bounties,
sum(Votes.BountyAmount) Amount
from Votes
where VoteTypeId = 9 -- 9 = BountyAwarded
group by datepart(year, Votes.CreationDate), datepart(month, Votes.CreationDate)
) AS V
ON P.Year = V.Year AND P.Month = V.Month
order by P.Year, P.Month