我试图找到超过10万人口的丹麦城市。
我可以找到所有在丹麦与此代码城市:
SELECT ?s ?o
WHERE {
?s a <http://dbpedia.org/class/yago/CitiesAndTownsInDenmark>
}
而与此代码,我可以找到超过10万人口的城市:
SELECT ?resource ?value
WHERE {
?resource <http://dbpedia.org/property/populationTotal> ?value
FILTER (?value > 100000)
}
ORDER BY ?resource ?value
我希望有关如何将这些查询组合帮助。
简单:
SELECT ?resource ?value
WHERE {
?resource a <http://dbpedia.org/class/yago/CitiesAndTownsInDenmark> .
?resource <http://dbpedia.org/property/populationTotal> ?value .
FILTER (?value > 100000)
}
ORDER BY ?resource ?value
换句话说:找到所有类型“城市或城镇在丹麦”的事情,并找到自己的群体。 可以缩写查询,避免“资源”重复使用“;” 而不是 '。':
?resource a <http://dbpedia.org/class/yago/CitiesAndTownsInDenmark> ;
<http://dbpedia.org/property/populationTotal> ?value .
(如果你使用SQL基本上是自然连接“”:你在每侧有资源,所以加入该值)