我正在使用Postgresql来存储Ruby gem版本号。我想在用户提供的自定义谓词和基本版本上过滤这些版本,为此我将两个版本转换为整数数组(为了便于比较):4.2.0
变为'{4,2,0}'
。
这很好用:
'{4,0,0}' < '{4,1,0}' # yields TRUE
但是,当数组长度不同时,我遇到了问题:
'{4}' < '{5,0,0}' # yields TRUE
'{4,1,2}' < '{4,1}' # also yields TRUE when it should be FALSE
我无法在文档中找到与此特定问题相关的任何内容。我怎样才能实现我的目标?如果具有较少元素的数组将用零填充(这将导致我预期的行为),那将会很棒。