如何比较Cypher中的OSGI包版本

时间:2014-09-11 09:46:16

标签: neo4j cypher

我需要比较'5.6.12'等版本。 '5.6.8'或'5.6.8-R1210'< '5.6.8-R210'。

RETURN '5.6.12' < '5.6.8' # true -> should be false
RETURN '5.6.8-R1210' < '5.6.8-R210' # true - should be false

我认为内置比较运算符不允许实现此目的。

如何实现自定义比较运算符?

1 个答案:

答案 0 :(得分:0)

希望其他人会告诉你如何在不需要任何额外数据或使用任何其他API的情况下实现这一点(比如我的评论,我认为你可以使用遍历实现这一点(如果你使用的是REST API)你可以将它包装在插件中),但我没有使用它,所以不觉得有资格回答使用它),但我不相信它是可能的。

如果失败,您是否有必要单独存储规范的捆绑版本,或者您是否可以存储规范版本以及存储订单值的a.n.other属性?另一个属性可以存储包版本的整数表示,或者一些标准化的字符串表示,它将按字典顺序给出您想要的排序顺序。

您是否必须将规范版本存储在单个属性中,或者是否可以将major,minor,micro和qualifier存储在单独的属性中。根据需要组装它们,但是能够在前三个属性中按字母顺序排序并按字典顺序排列到最后一个属性?