Postgresql 截取字符串的案例

 更新时间:2021年02月01日 10:34:30   作者:_流浪的猫_  
这篇文章主要介绍了Postgresql 截取字符串的案例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧

截取字符串一般用 substring 就够用了。对于有些长度不定的就没法用这个函数了,但还是有规律的,可以某个字符分割。

如:(这是一个url,截取最后一部分。现在要取 - 后面部分内容)

8a59e88177ad5e70-20170317120301AB9E.plist
12b8d5c26d83a17f-20170308173008D5DD.plist

这时需要 split_part 函数,如:

-- url 一共3个 - ,字符串被分成4部分,取最后一部分,那最后一个参数就是4

select split_part(fs.cdn_url ,'-', 4) from file_store fs 

如果 分割符 数量不一样怎么办,这里就要计算分割符的数量了

-- 将 1个分隔符 替换为 2个分隔符,然后用长度相减得到分隔符数

-- 最后 +1 是为了取最后一部分内容

select split_part(fs.cdn_url ,'-', length(replace(fs.cdn_url,'-','--')) - length(fs.cdn_url) + 1) from file_store fs 

补充:PostgreSQL字符串截取替换

初始化数据库

CREATE TABLE public.t1
(
 name text
)
 name
-------
"David"
"Peter"
"任务2016-09-10 10:09:00"
"任务2016-10-10 12:03:00"
"任务2016-12-22 14:10:00"

把包含"任务"的记录替换为"Job"

update t1 set name= 'Job'||substring(name,3) where substring(name,position('任务' in name),2)='任务'; 
select * from t1;
 name
-------
"David"
"Peter"
"Job2016-09-10 10:09:00"
"Job2016-10-10 12:03:00"
"Job2016-12-22 14:10:00"

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。如有错误或未考虑完全的地方,望不吝赐教。

相关文章

  • postgresql 中的时间处理小技巧(推荐)

    postgresql 中的时间处理小技巧(推荐)

    这篇文章主要介绍了postgresql 中的时间处理小技巧(推荐),本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2021-03-03
  • PostgreSQL数据库备份还原全攻略

    PostgreSQL数据库备份还原全攻略

    本文主要介绍逻辑备份和连续归档方式的备份及还原,文件系统级备份由于比较简单,这里不在赘述,以下操作使用的数据库版本为PostgreSQL 12.5,不同的数据库版本在进行连续归档操作时会有细微差异,需要的朋友可以参考下
    2024-04-04
  • 浅析postgresql 数据库 TimescaleDB 修改分区时间范围

    浅析postgresql 数据库 TimescaleDB 修改分区时间范围

    这篇文章主要介绍了浅析postgresql 数据库 TimescaleDB 修改分区时间范围,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2021-01-01
  • PostgreSQL实时查看数据库实例正在执行的SQL语句实例详解

    PostgreSQL实时查看数据库实例正在执行的SQL语句实例详解

    在任何数据库中,分析和优化SQL的执行,最重要的工作就是执行计划的解读,而说到执行计划得先了解postgresql的查询执行过程,下面这篇文章主要给大家介绍了关于PostgreSQL实时查看数据库实例正在执行的SQL语句的相关资料,需要的朋友可以参考下
    2023-01-01
  • PostgreSQL15.x安装的详细教程

    PostgreSQL15.x安装的详细教程

    PostgreSQL 是一个功能强大的开源关系型数据库系统,基于 C 语言实现,采用 PostgreSQL 许可证,这是一种自由软件许可证,允许用户自由使用、修改和分发源代码,所以本文将给大家介绍PostgreSQL15.x安装的详细教程,需要的朋友可以参考下
    2024-09-09
  • postgresql如何兼容MySQL if函数

    postgresql如何兼容MySQL if函数

    这篇文章主要介绍了postgresql如何兼容MySQL if函数问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-03-03
  • postgresql数据库设置id自增的基本方法举例例子解析

    postgresql数据库设置id自增的基本方法举例例子解析

    这篇文章主要给大家介绍了关于postgresql数据库设置id自增的基本方法举例,文章介绍了在PostgreSQL中实现自增ID的两种方法,分别是使用序列和触发器,序列方法简单直接,而触发器和函数方法则提供了更大的灵活性,需要的朋友可以参考下
    2024-11-11
  • postgresql数据库如何查看数据中表的信息

    postgresql数据库如何查看数据中表的信息

    这篇文章主要给大家介绍了关于postgresql数据库如何查看数据中表信息的相关资料,要查询数据表信息,需要用到 系统表或系统视图等,文中通过代码介绍的非常详细,需要的朋友可以参考下
    2024-04-04
  • postgresql关于like%xxx%的优化操作

    postgresql关于like%xxx%的优化操作

    这篇文章主要介绍了postgresql关于like%xxx%的优化操作,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2021-01-01
  • PostgreSQL大版本升级的详细流程

    PostgreSQL大版本升级的详细流程

    PostgreSQL版本发布规则,一年一个大版本,一个季度一个小版本;PG遇到的BUG问题,社区会很快进行修复,并在下一个版本中发布,因此有必要进行对数据库版本升级,本文给大家介绍了PostgreSQL大版本升级的详细流程,需要的朋友可以参考下
    2024-04-04

最新评论