Python實(shí)現(xiàn)邏輯
1、按照分隔符將字符串分割為列表類型
2、列表排序
3、列表拼接
separator.join(drug_list)
4、類型判斷
由于數(shù)據(jù)庫中對(duì)應(yīng)字段可能會(huì)出現(xiàn)為NULL的情況,即在Python中為None,而類型None 無split() 用法,因此添加條件判斷是否為真。如果為NULL,則直接返回None。
Python實(shí)現(xiàn)
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實(shí)現(xiàn)
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',';');
到此這篇關(guān)于自定義函數(shù)實(shí)現(xiàn)單詞排序并運(yùn)用于PostgreSQL的文章就介紹到這了,更多相關(guān)PostgreSQL自定義函數(shù)內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
您可能感興趣的文章:- PostGreSql 判斷字符串中是否有中文的案例
- PostgreSQL的中文拼音排序案例
- PostgreSQL將數(shù)據(jù)加載到buffer cache中操作方法
- 在PostgreSQL中使用ltree處理層次結(jié)構(gòu)數(shù)據(jù)的方法
- postgresql 中的時(shí)間處理小技巧(推薦)
- Postgresql限制用戶登錄錯(cuò)誤次數(shù)的實(shí)例代碼
- PostgreSQL用戶登錄失敗自動(dòng)鎖定的處理方案
- postgresql影子用戶實(shí)踐場景分析
- 如何使用PostgreSQL進(jìn)行中文全文檢索