You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Wikidata SPARQL分组查询中筛选沿岸大城市数大于3的河流

Wikidata SPARQL 查询修改方案

你需要使用SPARQL的HAVING子句对聚合后的统计结果进行筛选,该子句需要放在GROUP BY语句之后、ORDER BY语句之前。

修改后的完整查询语句如下:

# 流经3个以上大型城市的河流查询
SELECT ?river ?riverLabel (COUNT(?city) AS ?citycount)
WHERE {
  ?river wdt:P31 wd:Q4022. # 限定实例为河流
  ?city wdt:P31 wd:Q1549591. # 限定实例为大型城市
  ?city wdt:P206 ?river.  # 限定城市位于或紧邻对应河流
  SERVICE wikibase:label { bd:serviceParam wikibase:language "[AUTO_LANGUAGE]".}
}
GROUP BY ?river ?riverLabel
HAVING (?citycount > 3) # 筛选沿岸大城市数量大于3的河流
ORDER BY DESC(?citycount)
LIMIT 100

说明:WHERE子句仅能对分组前的原始数据做过滤,聚合统计后的结果筛选必须使用HAVING子句实现。


内容的提问来源于stack exchange,提问作者cknoll

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.29 04:09:00