WikiData查询美国城市/城镇的人口和开始日期

时间:2017-01-07 00:08:01

标签: sparql wikidata

我正在寻找帮助从WikiData中获取下表......

#Cities in US with population and inception dates SELECT DISTINCT ?city ?cityLabel ?countryLabel ?popDate ?population ?date WHERE { {?city (wdt:P31/wdt:P279*) wd:Q515 . } UNION {?city (wdt:P31/wdt:P279*) wd:Q3957 .} ?city (wdt:P17) wd:Q30 . ?city wdt:P17 ?country . ?city wdt:P571 ?date . { SELECT (MAX(?popDate) AS ?popDate) ?city WHERE { {?city (wdt:P31/wdt:P279*) wd:Q515 . } UNION {?city (wdt:P31/wdt:P279*) wd:Q3957 .} ?city (wdt:P17) wd:Q30 . ?city wdt:P17 ?country . ?city p:P1082 ?pop_statement . OPTIONAL { ?pop_statement pq:P585 ?popDate . } ?pop_statement ?p ?population . } GROUP BY ?city ORDER BY DESC(?popDate) } SERVICE wikibase:label { bd:serviceParam wikibase:language "en". } } ORDER BY ASC(?cityLabel)

我有一个查询工作,可以让我列出美国境内的所有城市(Q515)或城镇(Q3957)。我能够添加子查询以获得与每个城市的人口相关的可选最大时间点,以便我可以获得最新的人口价值。虽然我不知道如何实际获得该日期的匹配人口,更不用说州,县作为单个领域,最后是每个城市的开始日期。

?popDate

不幸的是,这是我在任何SPARQL代码上的第一次尝试,我不知道接下来该做什么。仍然需要......

  • “美国郡(Q47168)”的任意数量的实例连接成一列
  • “美国国家(Q35657)”的一个例子,应该作为一个县的“行政区域实体(P131)”或城市/城镇本身存在
  • 与行的{{1}}值相关的人口
  • 维基百科上用于Inception属性的标签/别名(P571)

0 个答案:

没有答案