自定义函数实现单词排序并运用于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通过oracle_fdw访问Oracle数据的实现步骤
May 21 PostgreSQL
如何使用PostgreSQL进行中文全文检索
May 27 PostgreSQL
通过Qt连接OpenGauss数据库的详细教程
Jun 23 PostgreSQL
PostgreSQL自动更新时间戳实例代码
Nov 27 PostgreSQL
PostgreSQL13基于流复制搭建后备服务器的方法
Jan 18 PostgreSQL
PostGIS的安装与入门使用指南
Jan 18 PostgreSQL
PostgreSQL并行计算算法及参数强制并行度设置方法
Apr 06 PostgreSQL
PostgreSQL数据库去除重复数据和运算符的基本查询操作
Apr 12 PostgreSQL
postgreSQL数据库基础知识介绍
Apr 12 PostgreSQL
PostgreSQL常用字符串分割函数整理汇总
Jul 07 PostgreSQL
PostgreSQL逻辑复制解密原理解析
Sep 23 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
咖啡语言
2021/03/03 咖啡文化
php数组函数序列之array_key_exists() - 查找数组键名是否存在
2011/10/29 PHP
简单谈谈favicon
2015/06/10 PHP
PHP之密码加密的几种方式
2015/07/29 PHP
visual studio code 调试php方法(图文详解)
2017/09/15 PHP
jQuery ajax+PHP实现的级联下拉列表框功能示例
2019/02/12 PHP
基于Laravel(5.4版本)的基本增删改查操作方法
2019/10/11 PHP
jQuery html() in Firefox (uses .innerHTML) ignores DOM changes
2010/03/05 Javascript
用Mootools获得操作索引的两种方法分享
2011/12/12 Javascript
artDialog 4.1.5 Dreamweaver代码提示/补全插件 附下载
2012/07/31 Javascript
JavaScript中this的使用详解
2013/11/08 Javascript
jQuery使用post方法提交数据实例
2015/03/25 Javascript
讲解JavaScript中for...in语句的使用方法
2015/06/03 Javascript
JQuery zClip插件实现复制页面内容到剪贴板
2015/11/02 Javascript
ECMA5数组的新增方法有哪些及forEach()模仿实现
2015/11/03 Javascript
Node.js中使用socket创建私聊和公聊聊天室
2015/11/19 Javascript
AngularJs表单验证实例详解
2016/05/30 Javascript
React 子组件向父组件传值的方法
2017/07/24 Javascript
VUE重点问题总结
2018/03/19 Javascript
详解Vue中使用Echarts的两种方式
2018/07/03 Javascript
JQuery搜索框自动补全(模糊匹配)功能实现示例
2019/01/08 jQuery
React实现评论的添加和删除
2020/10/20 Javascript
python实现查询IP地址所在地
2015/03/29 Python
python使用多线程不断刷新网页的方法
2015/03/31 Python
python如何通过twisted实现数据库异步插入
2018/03/20 Python
浅谈pytorch中的BN层的注意事项
2020/06/23 Python
python如何写try语句
2020/07/14 Python
简单了解python关键字global nonlocal区别
2020/09/21 Python
CSS3+font字体文件实现圆形半透明菜单具体步骤(图解)
2013/06/03 HTML / CSS
为什么说Ruby是一种真正的面向对象程序设计语言
2012/10/30 面试题
如何撰写岗位职责
2014/02/01 职场文书
文明寝室标语
2014/06/13 职场文书
四风问题对照检查材料思想汇报
2014/10/07 职场文书
小学师德师风整改措施
2014/10/27 职场文书
Python 内置函数速查表一览
2021/06/02 Python
浅谈@Value和@Bean的执行顺序问题
2021/06/16 Java/Android