Find interesting unanswered questions

0

Please login or register to vote for this query.

(click on this box to dismiss)

Looks at unanswered questions in your top 20 tags and sorts them by a combined weight which takes into account: score, askers reputation and how well you do on that particular tag

Physics

Q&A for active researchers, academics and students of physics

-- Find interesting unanswered questions
-- Looks at unanswered questions in your top 20 tags and sorts them by
-- a combined weight which takes into account: score, askers reputation and how
-- well you do on that particular tag

DECLARE @UserId int = ##UserId##
DECLARE @Revision int = ##Revision##

create table #tags (TagId int, [Count] int)

insert #tags 
SELECT TOP 20 
    TagId,
    COUNT(*) AS UpVotes 
FROM Tags
    INNER JOIN PostTags ON PostTags.TagId = Tags.id
    INNER JOIN Posts ON Posts.ParentId = PostTags.PostId
    INNER JOIN Votes ON Votes.PostId = Posts.Id and VoteTypeId = 2
WHERE 
    Posts.OwnerUserId = @UserId
GROUP BY TagId
ORDER BY UpVotes DESC


create table #unanswered (Id int primary key, CreationDate datetime)

insert #unanswered 
select top 5000 q.Id, q.CreationDate  from Posts q
where (select count(*) from Posts a where a.ParentId = q.Id and a.Score >= 0) = 0
and CommunityOwnedDate is null and ClosedDate is null and q.ParentId is null 
and AcceptedAnswerId is null
order by q.CreationDate desc


select top 2000 u.Id as [Post Link], 
(sum(t.[Count]) / 10.0 + us.Reputation / 200.0 + p.Score * 100) as Weight,
@Revision
from #unanswered u
join Posts p on u.Id = p.Id
join PostTags pt on pt.PostId = u.Id
join #tags t on t.TagId = pt.TagId  
join Users us on us.Id = p.OwnerUserId  
where us.Reputation > 200
group by u.Id, u.CreationDate, us.Reputation, p.Score 
having sum(t.[Count]) > 0 and p.Score >= 0
order by u.CreationDate desc

Enter Parameters

Options:
Switch sites:
loading Hold tight while we fetch your results