[EDIT] original title of this question was "Getting the last element of a Postgres array, declaratively"
如何获取Postgres中数组的最后一个元素?
我需要声明性地执行它,因为我想将其用作按条件排序.我不想为它创建一个特殊的PGSQL函数,在这种情况下,对数据库的更改越少越好.
实际上,我想做的是按照包含多个单词的特定列的最后一个单词进行排序.这里不允许更改模型.
换句话说,我想把Ruby的sort_by {|x| x.split[-1]}
推到数据库级别.我可以用Postgres string_to_array
或regexp_split_to_array
函数将一个值拆分为一个单词数组,那么如何获取它的最后一个元素呢?