2012-07-11 78 views
2

我很抱歉,如果这是不正确的位置 - 请移动它!我一直试图在过去的几个小时内提出一个查询,它将返回以下信息:如何通过data.stackexchange.com获取问题,每个标签的答案?

对最近三个完成月份(2012年4月)中“前5名”标签的问题数量和答案数量,2012年5月,2012年6月)。

我已经得到了this far的基础上,其他查询,我发现:

SELECT *, COUNT(*) AS Count FROM 
(
    SELECT CAST(
     CAST(DATEPART(YYYY, CreationDate) AS varchar) + '-' + CAST(DATEPART(MM, CreationDate) AS varchar) + '-01' 
    AS DATETIME) [Month], 
    t.TagName 
    FROM Posts p 
    JOIN PostTags pt ON pt.PostId = p.Id 
    JOIN Tags t ON t.Id = pt.TagId 
    WHERE TagId IN 
    (
    SELECT TOP 5 Id FROM Tags 
    ORDER BY Count DESC 
) 
) AS X 
WHERE [Month] >= CAST('2012-04-01' as datetime) 
AND [Month] < CAST('2012-07-01' as datetime) 
GROUP BY TagName, [Month] 
ORDER BY [Month] ASC, TagName ASC 

的问题是,JOIN没有相关PostTags消除记录。我对SQL不熟练,所以这导致了一些问题。培训相关信息:

  • 问题与PostTypeId帖子设置为1个
  • 解答与PostTypeId帖子设置为2

如果有人可以帮助我将非常感激。

谢谢。

+0

@bluefeet但是,这是一个编程问题... – Hassan 2012-07-11 02:00:03

+0

bluefeet:数据源不应该是一个问题。我已经发布了我的数据结构(这是由stackexchange决定的)和我的查询,并要求帮助进行下一步。 – 2012-07-11 02:01:05

回答

相关问题