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

如何在Blazegraph RDF中正确过滤IRI?SPARQL查询返回空集问题

SPARQL过滤IRI主语返回空集的解决方法

你在Blazegraph中执行SPARQL查询时,过滤对象(?g)包含"Svet"的语句能得到结果,但过滤主语(?y)包含"www"的语句却返回空集,核心原因是直接对IRI变量使用regex()函数时,数据库无法直接识别IRI的字符串内容。

正确的查询语句

SELECT ?y ?p ?g
WHERE {
  ?y ?p ?g .
  FILTER regex(STR(?y), "www", "i")
}

原因说明

SPARQL中,IRI类型的变量(比如作为主语的?y)默认以资源形式存在,而非字符串。使用STR(?y)函数可以将IRI转换为对应的字符串形式,之后regex()就能正确匹配字符串中的"www"字符了。之前的查询没有转换类型,数据库无法对IRI资源执行字符串正则匹配,因此返回空集。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.22 00:13:08