Posted in PostgreSQL onApril 22, 2021
Python实现逻辑
1、按照分隔符将字符串分割为列表类型
drugs.split(separator)
2、列表排序
drug_list.sort()
3、列表拼接
separator.join(drug_list)
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)
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(实现代码)
- Author -
繁梦溪声明:登载此文出于传递更多信息之目的,并不意味着赞同其观点或证实其描述。
Reply on: @reply_date@
@reply_contents@