`

PostgreSQL模仿MySQL的substring_index方法

 
阅读更多

PostgreSQL中没有substring_index方法,在做一个项目迁移的时候,需要类似MySQL的substring_index方法。从网上找了相关代码。如下:

CREATE OR REPLACE FUNCTION substring_index(varchar, varchar, integer)
RETURNS varchar AS $$
DECLARE
tokens varchar[];
length integer ;
indexnum integer;
BEGIN
tokens := pg_catalog.string_to_array($1, $2);
length := pg_catalog.array_upper(tokens, 1);
indexnum := length - ($3 * -1) + 1;
IF $3 >= 0 THEN
RETURN pg_catalog.array_to_string(tokens[1:$3], $2);
ELSE
RETURN pg_catalog.array_to_string(tokens[indexnum:length], $2);
END IF;
END;
$$ IMMUTABLE STRICT LANGUAGE PLPGSQL;


分享到:
评论

相关推荐

    PostgreSQL find_in_set 内核开发

    博客:PostgreSQL的学习心得和知识总结(六十五)|关于PostgreSQL数据库 实现MySQL数据库find_in_set()函数 的实现方案

    PostgreSql连接任意数据库JDBC_FDW

    ### PostgreSql 连接任意数据库使用 JDBC_FDW 插件详解 #### 一、概述 JDBC_FDW 是一个 PostgreSQL 的外部数据包装器(Foreign Data Wrapper),它允许 PostgreSQL 使用 JDBC 驱动来访问其他数据库系统。通过这种...

    PostgreSQL_DBMS_for_Windows_922_136133.exe

    支持ArcGIS10.2版本的PostgreSQL_DBMS_for_windows_922,ESRI官方原版资源。

    PostgreSQL_8.2.3.rar_postgresql_windows 8

    在“PostgreSQL_8.2.3_中文文档.chm”中,我们可以找到关于PostgreSQL 8.2.3的详细中文指南。CHM文件是Microsoft的 Compiled HTML Help 文件,它以电子书的形式提供了一整套的文档和帮助信息,便于用户快速查询和...

    PostgreSQL 8_0_2 应用.htm

    PostgreSQL 8_0_2 应用.htm

    dbExpress_driver_for_PostgreSQL__Windows_version_3.6.8__17-Apr-2015.exe

    dbExpress_driver_for_PostgreSQL__Windows_version_3.6.8__17-Apr-2015.exe

    PostgreSQL与MySQL比较

    "PostgreSQL与MySQL比较" PostgreSQL和MySQL是两种流行的开源关系数据库管理系统,它们之间有很多相似之处,但同时也存在一些关键的差异。本文将对PostgreSQL和MySQL进行详细的比较,涵盖它们的架构、性能、安全性...

    dbconvert_mysql_postgresql.zip

    标题“dbconvert_mysql_postgresql.zip”表明这是一款用于数据库转换的工具,主要功能是从PostgreSQL数据库转换到MySQL数据库。在IT行业中,数据迁移是常见的需求,尤其是在不同的数据库系统之间。PostgreSQL是一种...

    postgresql_maestro_setup

    postgresql_maestro_setup.exe

    mysql_generate_series:mysql_generate_series是PostgreSQL generate_series函数MySQL复制品

    该版本(原始版本)经过(大量)改编,并试图简化方法调用,并在可能的情况下使MySQL版本参数遵循PostgreSQL版本。 它提供了一个单一的方法generate_series(start, stop, step)从提供一系列start到stop递增step 。...

    数据库_MySQL_PostgreSQL_数据表结构导出_W_1741869825.zip

    数据库_MySQL_PostgreSQL_数据表结构导出_W_1741869825.zip是一个包含了与数据库数据结构相关的文件压缩包,其中包含了三个主要的文件。这些文件的名称和文件格式反映了其内容和用途,对于学习和理解数据结构,尤其...

    MySQL和PostgreSQL的比较

    ### MySQL与PostgreSQL对比分析 #### 一、实例与服务管理 **MySQL**与**PostgreSQL**在实例和服务管理方面存在显著差异。MySQL通过执行`mysqld`命令启动实例,一个实例能够管理一个或多个数据库,且一台服务器可...

    postgresql PGCA 课程PPT01_postgresql_PGCA_PGCP_PGCM_课程全免费

    【PostgreSQL】是一种高度成熟且功能丰富的开源(对象-关系型)数据库管理系统,它在业界被认为是主流数据库之一,尤其在企业级应用中受到广泛青睐。PostgreSQL 的特性包括支持复杂查询、事务处理、多版本并发控制...

    linux搭建postgresql、postgis、pg_pathman环境步骤以及需要的软件包

    在Linux系统上搭建PostgreSQL、PostGIS和pg_pathman环境是一项关键的任务,这些组件共同构成了一个强大的地理空间数据库解决方案。PostgreSQL是一种开源的关系型数据库管理系统,具有高度的可扩展性和可靠性;...

    PostgreSQL和MySQL协议简介.pdf

    PostgreSQL和MySQL协议简介 一、网络协议概述 PostgreSQL和MySQL协议是数据库网络协议,属于OSI模型的应用层协议。网络协议是通信双方必须遵守的一组约定,包括语法、语义和时序三个要素。其中语法规定数据和控制...

    White_Paper_PostgreSQL_MySQL

    ### PostgreSQL与MySQL企业适用性对比分析 #### 执行摘要 大多数IT专业人士普遍认为,相比于MySQL,PostgreSQL更适合承担企业级数据库的责任。这份由EnterpriseDB发布的白皮书详细比较了PostgreSQL与MySQL在企业级...

    PostgreSQL数据库内部原理剖析 PDF

    Prestogres_Hacking_PostgreSQL_Internals_to_Solve_Data_Access_-_Sadayuki_Furuhashi.pdf Relational DBMS Internals.pdf The History of PostgreSQL Open Source Development.pdf THE IMPLEMENTATION OF POSTGRES...

    Learning_PostgreSQL_10,_2nd_Edition

    Server, and MySQL. Due to its rich extensions and open source license, it is often used for research purposes, but PostgreSQL code is also the base for many open source and commercial database ...

    POSTGRESQL_9_HIGH_AVAILABILITY_COOKBOOK 高清pdf加原书代码

    《POSTGRESQL_9_HIGH_AVAILABILITY_COOKBOOK》是一本专注于PostgreSQL数据库高可用性的实战指南。这本书针对PostgreSQL 9版本,旨在帮助读者掌握如何构建和维护高可用性的数据库环境,确保业务连续性和数据安全性。...

    PostgreSQL13.1_CN_v1.0.chm

    PostgreSQL13.1数据库chm格式的中文手册,带目录,带全文检索,内容与官方文档是完全一样的。PostgreSQL13.1-CN-v1.0.chm中文手册

Global site tag (gtag.js) - Google Analytics