SPARQL 中的幂(指数)和其他数学函数支持
-
05-07-2019 - |
题
我正在尝试编写一个 SPARQL 查询,我想在其中过滤某些东西的平方,但我根本无法弄清楚如何计算一个数字的平方(X2)(当然,除了与自身相乘之外)。我猜有一个平方根函数叫做 math:sqrt()
这有效,但没有什么像 math:pow
似乎存在。
如何在 SPARQL 中获取某个值的平方,更重要的是,我在哪里可以阅读有关它和其他数学函数的信息,例如 math:sqrt
在 SPARQL 中?
笔记:这与我之前的问题有关: 反向维基百科地理标记查找 .
解决方案
现在已经是几年后的事了 SPARQL 1.1 查询语言 已发布。它包含比原始 SPARQL 查询语言更多的内置函数。除了许多关于字符串、RDF 术语等的函数之外,还有许多数字函数(章节号表示链接标准中的章节):
还是没有 square
函数在这里,以及实现该函数的最快方法将使用 *
, , 所以 拉阿尔托的回答 仍然矗立。SPARQL 支持的运算符在 17.3 操作符映射, ,对于 XPath 算术仍然只是一组 +
, -
, *
, , 和 /
.
其他提示
SPARQL支持一些XPath算术函数,例如 + - * /
。它们在 SPARQL规范中有所描述。
规范不支持电源功能。无论如何, x * x
是比 pow(x,2)
更有效的计算方块的方法。
不隶属于 StackOverflow