时间:2021-04-22来源:www.pcxitongcheng.com作者:电脑系统城
1、按照分隔符将字符串分割为列表类型
1 | drugs.split(separator) |
2、列表排序
1 | drug_list.sort() |
3、列表拼接
1 | separator.join(drug_list) |
4、类型判断
由于数据库中对应字段可能会出现为NULL的情况,即在Python中为None,而类型None 无split() 用法,因此添加条件判断是否为真。如果为NULL,则直接返回None。
Python实现
1 2 3 4 5 6 7 8 9 |
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) |
SQL实现
1 2 3 4 5 6 7 8 9 10 11 12 13 14 |
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的文章就介绍到这了
2022-09-11
Windows 系统 PostgreSQL 手工安装配置方法教程图解2022-02-25
系统城教小白如何在Centos8-stream安装PostgreSQL132021-04-19
MySQL命令行操作时的编码问题详解玩游戏的时候最怕跳出什么程序来干扰游戏,很多玩家在玩游戏过程中会遇到输入法弹出来,影响游戏体验,Win10玩游戏老跳出来输入法怎么办?按照以下的方法操作就可以解决这个问题了...
2021-02-19