有没有办法在postgres中比较软件版本(例如X.Y.Z> A.B.C)?我正在搜索string / varchar或“version”类型的函数.
我发现了http://pgxn.org/dist/semver/doc/semver.html,但我正在寻找替代方案(不是那么容易部署..)
非常感谢.
您可以将版本拆分为数组,然后执行
array comparison.
select regexp_split_to_array(v1,'\.')::int[] v1,regexp_split_to_array(v2,'\.')::int[] v2,regexp_split_to_array(v1,'\.')::int[] > regexp_split_to_array(v2,'\.')::int[] cmp from versions;