我想将属性的实例添加到这个示例查询中,以便只获取作为human实例的items。
以下是示例查询:
SELECT ?entityLabel (YEAR(?date) as ?year)
WHERE
{
BIND(MONTH(NOW()) AS ?nowMonth)
BIND(DAY(NOW()) AS ?nowDay)
?entity wdt:P569 ?date .
FILTER (MONTH(?date) = ?nowMonth && DAY(?date) = ?nowDay)
SERVICE wikibase:label {
bd:serviceParam wikibase:language "en" .
}
}
LIMIT 10这是我用property的实例调整后的版本:
SELECT ?entityLabel (YEAR(?date) as ?year)
WHERE
{
?entity wdt:P31 wd:Q5 .
BIND(MONTH(NOW()) AS ?nowMonth)
BIND(DAY(NOW()) AS ?nowDay)
?entity wdt:P569 ?date .
FILTER (MONTH(?date) = ?nowMonth && DAY(?date) = ?nowDay)
SERVICE wikibase:label {
bd:serviceParam wikibase:language "en" .
}
}
LIMIT 10但我也只添加了一行,我现在得到一个查询超时。有没有人知道我如何改进我的查询,使我不会超时。
发布于 2019-05-09 07:34:53
这将超时,因为查询服务将在限制所有wdt:P31 wd:Q5之前尝试启动所有wdt:p31 wd:q5。
您可以在:https://www.wikidata.org/wiki/Wikidata:SPARQL_query_service/query_optimization中查看更多详细信息
https://stackoverflow.com/questions/41969219
复制相似问题