Sparql 如何在某个国家找到人口超过X的城市
我正在努力寻找丹麦人口超过10万的城市 我可以找到丹麦所有有此代码的城市:Sparql 如何在某个国家找到人口超过X的城市,sparql,dbpedia,Sparql,Dbpedia,我正在努力寻找丹麦人口超过10万的城市 我可以找到丹麦所有有此代码的城市: SELECT ?s ?o WHERE { ?s a <http://dbpedia.org/class/yago/CitiesAndTownsInDenmark> } SELECT?s?o 何处{ 是的 } 通过这个代码,我可以找到人口超过10万的城市: SELECT ?resource ?value WHERE { ?resource <http://dbpedia.org/p
SELECT ?s ?o
WHERE {
?s a <http://dbpedia.org/class/yago/CitiesAndTownsInDenmark>
}
SELECT?s?o
何处{
是的
}
通过这个代码,我可以找到人口超过10万的城市:
SELECT ?resource ?value
WHERE {
?resource <http://dbpedia.org/property/populationTotal> ?value
FILTER (?value > 100000)
}
ORDER BY ?resource ?value
选择资源值
何处{
资源价值
过滤器(?值>100000)
}
按资源价值排序
如果您能帮助我组合这些查询,我将不胜感激。简单:
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
选择资源值
何处{
?资源a。
?资源?价值。
过滤器(?值>100000)
}
按资源价值排序
换句话说:找到所有类型为“丹麦城市或城镇”的东西,并找到它们的人口。您可以使用“;”缩写查询,避免重复“resource”而不是“.”:
?resource a <http://dbpedia.org/class/yago/CitiesAndTownsInDenmark> ;
<http://dbpedia.org/property/populationTotal> ?value .
?资源a;
价值
(如果您习惯使用SQL,“.”本质上是一种自然联接:您每边都有?资源,因此请按该值联接)知道在哪里可以找到所涵盖国家的列表吗?“中国”不起作用。这种有用的类型是存在的,因为人们在维基百科中使用这个类别。我看到了雅阁:中国的大都市,但那个里人口不多。您最好不要依赖此类类别的存在,而直接查询某个国家的人口稠密地区。例如:
select?s{s a;}