什么时候在SPARQL中使用VALUES不等同于在查询本身中用URI直接替换变量?

时间:2019-07-05 07:50:30

标签: sparql rdf jena rdf4j

根据Difference in performance between using VALUES keyword and using directly the URI in the query?处的问题,我了解到在查询末尾使用VALUES子句在性能和查询优化方面并不总是等同于直接使用URI而不是变量在查询字符串中。

来自Andy的评论说VALUES最后是“像设置变量”,但不尽相同。优化器尝试将值推入,但并非在所有情况下都会发生它会改变语义。”

有人可以解释在哪种情况下不会发生吗?对于哪种查询结构,为什么要这么做?我需要了解在什么情况下不建议使用这种技术(我已经愉快地使用了多年)。

请注意,我不太懂SPARQL代数,因此请尝试使用简单的单词:-)

(我知道这不是特定于Jena或RDF4J,但我用这2个标签标记了这个问题,因为我知道根据所使用的框架,对它的优化可能会有所不同。)

0 个答案:

没有答案