我的笔记本电脑上安装了PostgreSQL 9.4,我的数据库包含一个版本号,其格式为:A.B.C.D(例如:1.2.13.6)。如何将MAX聚合应用于我的列"版本"这是文字。非常感谢你
答案 0 :(得分:1)
如果数字始终数字,您可以执行以下操作:
select max(string_to_array(version, '.')::int[])
from your_table;
通过将字符串转换为整数数组,比较将正确完成[1,12,1]
大于[1,1,1]
如果您在该列
中有1.2.13.6a
之类的值,则会失败
SQLFiddle:http://sqlfiddle.com/#!15/d41d8/4608