限制记录按范围返回

时间:2019-04-08 09:33:34

标签: sparql

嗨,我有一个特殊的sparql查询,它在图形中返回我所有的三元组。这需要一些时间才能运行,所以我想知道是否可以限制三元组的数量并在用户每次在界面ex上按next时重新运行查询:首先,他看到前10个,然后看到下10个,等等。获取所有结果并保存,然后遍历结果。我可以先获得前10个,然后获得10个,等等。

1 个答案:

答案 0 :(得分:1)

对于SELECT查询,仅获取前十行:

SELECT ...
WHERE {
  ...
}
LIMIT 10

要获取下十个:

SELECT ...
WHERE {
  ...
}
OFFSET 10 LIMIT 10

接下来的10个,将OFFSET增加到20,依此类推。

您说查询返回三元组,那么它是CONSTRUCT查询吗? LIMITOFFSET也可以与CONSTRUCT一起使用,但是返回的三元组数将取决于构造模板中的三元组模式数。

编辑:使用LIMITOFFSET时,在某些SPARQL存储中,您还需要使用ORDER BY ?x,其中?x是其中之一。查询变量。这样可以确保结果的可预测顺序。