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

如何在SPARQL UNION查询结果中返回指定属性及变量

在SPARQL UNION查询中返回对应关系属性的方法

要在UNION的查询结果里同时返回每条记录对应的关系属性,核心是在每个UNION分支中把当前使用的属性绑定到一个统一变量上,这样结果集就能同时包含你需要的?item、?person和对应的关系属性。

以Wikidata为例,直接看修改后的查询示例:

SELECT ?item ?person ?rel
WHERE {
  { 
    ?item wdt:P170 ?person .
    BIND(wdt:P170 AS ?rel)
  }
  UNION
  { 
    ?item wdt:P50 ?person .
    BIND(wdt:P50 AS ?rel)
  }
}
LIMIT 10

关键说明:

  • 每个UNION分支内,通过BIND()把当前使用的关系属性(比如wdt:P170)赋值给统一变量?rel,所有分支的结果都会带上这个变量,对应各自的关系属性。
  • 如果需要返回完整URI,直接把缩写替换成完整URI即可,比如BIND(<http://www.wikidata.org/prop/direct/P170> AS ?rel),和前缀缩写的效果完全一致。
  • 不管有多少个UNION分支,都可以用同样的方式处理,每个分支绑定对应的属性到?rel,结果集里的每条记录都会准确关联到它所属的关系属性。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.25 05:36:20