以下查询返回存储库中的语句数:
SELECT (COUNT(*) AS ?count)
WHERE {
?s ?p ?o
}
有没有办法返回每个命名图的语句数?
以下查询不起作用,仅举一个示例:
SELECT ?graphName ?count
WHERE {
GRAPH ?graphName {
?s ?p ?o.
BIND(COUNT(?s ?p ?o.) AS ?count)
}
}
- 我意识到
COUNT
不能在WHERE
中,也不能接受变量。
只需在查询中添加一个GROUP BY
子句 --
SELECT ?graphName
( COUNT ( * ) AS ?count )
WHERE
{
GRAPH ?graphName
{
?s ?p ?o
}
}
GROUP BY ?graphName
在 DBpedia 上查看查询及其实时结果