【问题标题】:Wikidata query timeout维基数据查询超时
【发布时间】:2023-04-08 08:53:01
【问题描述】:

我想将属性实例添加到此示例查询中,以仅获取作为人类实例的项目。

这是示例查询:

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

这是我调整后的带有属性实例的版本:

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

但我也只添加了一行我现在得到一个查询超时。 有谁知道我如何云改进我的查询,这样我就不会超时。

【问题讨论】:

标签: sparql wikidata


【解决方案1】:

这将超时,因为查询服务会在限制它们之前尝试以所有 wdt:P31 wd:Q5 启动。

您可以在以下位置查看更多详细信息: https://www.wikidata.org/wiki/Wikidata:SPARQL_query_service/query_optimization

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-01-01
    相关资源
    最近更新 更多