好得很程序员自学网

<tfoot draggable='sEl'></tfoot>

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

Python实现逻辑

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的文章就介绍到这了,更多相关PostgreSQL自定义函数内容请搜索服务器之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持服务器之家!

原文链接:https://blog.csdn.net/FG24151110876/article/details/115864822

查看更多关于自定义函数实现单词排序并运用于PostgreSQL(实现代码)的详细内容...

  阅读:47次