自定义函数实现单词排序并运用于PostgreSQL(实现代码)


Posted in PostgreSQL onApril 22, 2021

Python实现逻辑

1、按照分隔符将字符串分割为列表类型

drugs.split(separator)

自定义函数实现单词排序并运用于PostgreSQL(实现代码)

2、列表排序

drug_list.sort()

自定义函数实现单词排序并运用于PostgreSQL(实现代码)

3、列表拼接

separator.join(drug_list)

自定义函数实现单词排序并运用于PostgreSQL(实现代码)

4、类型判断

由于数据库中对应字段可能会出现为NULL的情况,即在Python中为None,而类型None 无split() 用法,因此添加条件判断是否为真。如果为NULL,则直接返回None。

Python实现

def 单词排序(drugs,separator):
    if drugs:
        drug_list=drugs.split(separator)
        drug_list.sort()
        new_drugs=separator.join(drug_list)
    else:
        new_drugs=None
    return new_drugs
单词排序(drugs,separator)

 自定义函数实现单词排序并运用于PostgreSQL(实现代码)

SQL实现

DROP FUNCTION IF EXISTS 单词排序;
CREATE OR REPLACE FUNCTION 单词排序(drugs TEXT, separator TEXT)
	RETURNS text
AS $$
if drugs:
	drug_list=drugs.split(separator)
	drug_list.sort()
	new_drugs=separator.join(drug_list)
else:
	new_drugs=None
return new_drugs
$$ LANGUAGE plpython3u;
 
SELECT 单词排序('aa;dd;bbb;cd;zz',';');

自定义函数实现单词排序并运用于PostgreSQL(实现代码)

到此这篇关于自定义函数实现单词排序并运用于PostgreSQL的文章就介绍到这了,更多相关PostgreSQL自定义函数内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

PostgreSQL 相关文章推荐
PostgreSQL存储过程实用脚本(二):创建函数入门
Apr 05 PostgreSQL
PostgreSQL将数据加载到buffer cache中操作方法
Apr 16 PostgreSQL
Centos环境下Postgresql 安装配置及环境变量配置技巧
May 18 PostgreSQL
PostgreSQL通过oracle_fdw访问Oracle数据的实现步骤
May 21 PostgreSQL
关于PostgreSQL JSONB的匹配和交集问题
Sep 14 PostgreSQL
PostgreSQL自动更新时间戳实例代码
Nov 27 PostgreSQL
PostGIS的安装与入门使用指南
Jan 18 PostgreSQL
使用PostGIS完成两点间的河流轨迹及流经长度的计算(推荐)
Jan 18 PostgreSQL
PostgreSQL数据库去除重复数据和运算符的基本查询操作
Apr 12 PostgreSQL
PostgreSQL基于pgrouting的路径规划处理方法
Apr 18 PostgreSQL
PostgreSQL之连接失败的问题及解决
May 08 PostgreSQL
PostgreSQL存储过程实用脚本(二):创建函数入门
PostgreSQL将数据加载到buffer cache中操作方法
Apr 16 #PostgreSQL
Centos环境下Postgresql 安装配置及环境变量配置技巧
PostgreSQL通过oracle_fdw访问Oracle数据的实现步骤
如何使用PostgreSQL进行中文全文检索
May 27 #PostgreSQL
postgresql无序uuid性能测试及对数据库的影响
Jun 11 #PostgreSQL
postgres之jsonb属性的使用操作
Jun 23 #PostgreSQL
You might like
Yii实现自动加载类地图的方法
2015/04/01 PHP
ThinkPHP实现转换数据库查询结果数据到对应类型的方法
2017/11/16 PHP
在phpstudy集成环境下的nginx服务器下配置url重写
2019/12/02 PHP
Javascript 面向对象(一)(共有方法,私有方法,特权方法)
2012/05/23 Javascript
javascript学习笔记(十八) 获得页面中的元素代码
2012/06/20 Javascript
文本框回车提交与禁止提交示例
2013/09/27 Javascript
javascript实用小函数使用介绍
2013/11/11 Javascript
Knockout数组(observable)使用详解示例
2013/11/15 Javascript
浅谈js中变量初始化
2015/02/03 Javascript
JavaScript中数据结构与算法(五):经典KMP算法
2015/06/19 Javascript
node.js中格式化数字增加千位符的几种方法
2015/07/03 Javascript
jQuery使用$获取对象后检查该对象是否存在的实现方法
2016/09/04 Javascript
微信小程序中使用javascript 回调函数
2017/05/11 Javascript
纯JavaScript实现实时反馈系统时间
2017/10/26 Javascript
浅谈vue中.vue文件解析流程
2018/04/24 Javascript
bootstrap treeview 树形菜单带复选框及级联选择功能
2018/06/08 Javascript
Vue Cli 3项目使用融云IM实现聊天功能的方法
2019/04/19 Javascript
详解vue2.0模拟后台json数据
2019/05/16 Javascript
亲自动手实现vue日历控件
2019/06/26 Javascript
IE11下处理Promise及Vue的单项数据流问题
2019/07/24 Javascript
使用Typescript开发微信小程序的步骤详解
2021/01/12 Javascript
[36:02]DOTA2上海特级锦标赛D组小组赛#2 Liquid VS VP第一局
2016/02/28 DOTA
使用Python实现简单的服务器功能
2017/08/25 Python
python基本语法练习实例
2017/09/19 Python
Python面向对象之类和对象属性的增删改查操作示例
2018/12/14 Python
详解Python进阶之切片的误区与高级用法
2018/12/24 Python
python2和python3在处理字符串上的区别详解
2019/05/29 Python
python re模块匹配贪婪和非贪婪模式详解
2020/02/11 Python
Selenium及python实现滚动操作多种方法
2020/07/21 Python
介绍一下JMS编程步骤
2015/09/22 面试题
《晚上的太阳》教学反思
2014/04/23 职场文书
个人贷款授权委托书样本
2014/10/07 职场文书
赢在中国观后感
2015/06/02 职场文书
投诉信范文
2015/07/02 职场文书
MySQL之高可用集群部署及故障切换实现
2021/04/22 MySQL
Python 第三方库 openpyxl 的安装过程
2022/12/24 Python