SEDE查询不返回任何行



我有以下查询https://data.stackexchange.com/stackoverflow

SELECT TOP 10 * FROM Posts
WHERE PostTypeId = 2 
AND CreationDate > '2022-05-06'
AND CommentCount = 3
AND Tags LIKE '%php%'
ORDER BY CreationDate DESC

我试图得到答案,今天张贴在php标签,也有3个评论。

但我收到的却是:

在51274 ms内返回0行

我确信SE Data Explorer并不总是最新的,但问题似乎在其他地方。
Tags列是null列的答案。
如果您想获得标签,您必须查询您可以通过ParentId列获得的问题。

使用自连接:

SELECT TOP 10 p1.* 
FROM Posts p1 INNER JOIN Posts p2
ON p2.Id = p1.ParentId
WHERE p1.PostTypeId = 2 
AND p2.Tags LIKE '%php%' 
AND p1.CommentCount = 3
-- AND <your date condition here>
ORDER BY p1.CreationDate DESC

首先,您的查询似乎非常选择性。给我所有PHP问题的答案,从今天的答案有正好3个评论?我不知道你能不能找到很多这样的东西。也许如果您将标准更改为CommentCount >= 3(并以正确的方式跟踪标签),但即使有了这些修复,对答案的评论也不会经常达到那么高(或停留很长时间)。

第二,SEDE每周更新在星期日更新。请参阅这个问题、这个问题(它链接到这个查询,您可以使用这个查询监视状态)和这个问题。(碰巧就在这个周末,正常的刷新失败了,但这不会导致这个特定的问题。)

SEDE刷新是一项广泛的操作,因为数据以各种方式进行了转换(简化了结构以使查询更容易,并且对数据进行了清理以删除任何PII)。所以在星期六,不,你不会在那里找到今天的任何帖子(好吧,在前一个星期天之后)。

你可以检查这个查询,看看为什么你的WHERE子句也太有选择性了:

SELECT MAX(CreationDate) FROM Posts;

一旦你选择了日期条件,你可以修复查询中的其他问题。

相关内容

  • 没有找到相关文章

最新更新