如何使用sparql查询使用自定义顺序获取结果

时间:2018-06-06 08:43:31

标签: sql-order-by sparql

如果.nt数据文件中有一些数据,如:

<ted> <pre> <a>.
<alice> <pre> <b>.
<ella> <pre> <c>.
<hens> <pre> <d>.
<lee> <ppp> <other>.

我想在自定义中按<pre>订购数据。

SPARQL查询是:

//customize order by
select distinct ?s ?o where {
values (?o ?o_){(<a> 1)(<b> 2)}{?s <pre> ?o}
} order by ?o_` 

结果是

<ted> <pre> <a>
<alice> <pre> <b>

我想获取所有数据,并询问是否有其他数据的通配符。

//(<*> 3) is pseudocode
select distinct ?s ?o where {
values (?o ?o_){(<a> 1)(<b> 2)(<*> 3)}{?s <pre> ?o}
} order by ?o_`  

然后我可以得到数据结果:

<ted> <pre> <a>
<alice> <pre> <b>
<ella> <pre> <c>
<hens> <pre> <d>
<lee> <ppp> <other>

1 个答案:

答案 0 :(得分:0)

正如@AKSW评论的那样,解决方案是改变 -

values (?o ?o_){(<a> 1)(<b> 2)(<*> 3)}{?s <pre> ?o}

- 到 -

values (?o ?o_){(<a> 1)(<b> 2)(UNDEF 3)}