postgresql - psql SPLIT 的最新部分
问题描述
PSQL Split 是一个从拆分字符串中获取 n 部分的函数:
https://www.eduba.com/postgresql-split_part/
所以,如果我们有:
SELECT SPLIT_PART('X,Y,Z', ',', 1);
我们会得到 X。
我的数据库有一列,其值如下: 'X,Y'
,'X,Y,Z,W'
等
我需要检索已拆分字符串的最新部分。我是说
对于 'X,Y'
--> 'Y'
对于 'X,Y,Z,W'
-->'W'
是否有可能做到这一点?
解决方案
您可以将其拆分为一个数组,然后选择最后一个元素:
select (string_to_array(the_column, ','))[cardinality(string_to_array(the_column, ','))]
from the_table
推荐阅读
- c# - 如何使用 Visual Studio 2019 x64 位修复 TFS 构建
- pytorch - 遇到 RuntimeError:梯度计算所需的变量之一已被就地操作修改
- sql-server - 如何从 varchar 列中获取数字并检查该值是否在范围内
- python - Sympy evalf() 关于狄拉克函数的积分
- javascript - 如何将此获取响应转换为字符串?
- swift - SwiftUI:可以访问祖先自定义`@EnvironmentObject`?如果是,如何?
- python-3.x - TypeError:'int' 对象不可调用 - 问题
- angular - Angular:本地化为多种语言
- data-warehouse - 数据仓库/湖中的单个与多个 ID 列
- sql - 加入数据透视表的问题