日韩无码专区无码一级三级片|91人人爱网站中日韩无码电影|厨房大战丰满熟妇|AV高清无码在线免费观看|另类AV日韩少妇熟女|中文日本大黄一级黄色片|色情在线视频免费|亚洲成人特黄a片|黄片wwwav色图欧美|欧亚乱色一区二区三区

RELATEED CONSULTING
相關咨詢
選擇下列產(chǎn)品馬上在線溝通
服務時間:8:30-17:00
你可能遇到了下面的問題
關閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
Oracle存儲過程中去掉重復字符串函數(shù)

以下函數(shù)是在編寫Oracle數(shù)據(jù)庫存儲過程時寫的函數(shù),相信下文中的內(nèi)容對大家會非常有幫助,重要的是該函數(shù)通用性比較強,故拿出來與大家分享,供大家參考,希望對大家能夠有所幫助。

網(wǎng)站建設哪家好,找創(chuàng)新互聯(lián)建站!專注于網(wǎng)頁設計、網(wǎng)站建設、微信開發(fā)、微信平臺小程序開發(fā)、集團企業(yè)網(wǎng)站建設等服務項目。為回饋新老客戶創(chuàng)新互聯(lián)還提供了湖濱免費建站歡迎大家使用!

這個函數(shù)的功能主要是用于去除給定字符串中重復的字符串.在使用中需要指定字符串的分隔符.示例:

str := MyReplace('13,14,13,444', ',');

輸出:

13,14,444

create or replace function MyReplace(oldStr varchar2, sign varchar2) return varchar2 is

str varchar2(1000);

currentIndex number;

startIndex number;

endIndex number;

type str_type is table of varchar2(30)

index by binary_integer;

arr str_type;

Result varchar2(1000);

begin

if oldStr is null then

return ('');

end if;

str := oldStr;

currentIndex := 0;

startIndex := 0;

loop

currentIndex := currentIndex + 1;

endIndex := instr(str, sign, 1, currentIndex);

if (endIndex <= 0) then

exit;

end if;

arr(currentIndex) := trim(substr(str, startIndex + 1, endIndex - startIndex - 1));

startIndex := endIndex;

end loop;

取最后一個字符串:

arr(currentIndex) := substr(str, startIndex + 1, length(str));

去掉重復出現(xiàn)的字符串:

for i in 1.. currentIndex - 1 loop

for j in i + 1..currentIndex loop

if arr(i) = arr(j) then

arr(j) := '';

end if;

end loop;

end loop;

str := '';

for i in 1..currentIndex loop

if arr(i) is not null then

str := str || sign || arr(i);

數(shù)組置空:

arr(i) := '';

end if;

end loop;

去掉前面的標識符:

Result := substr(str, 2, length(str));

return(Result);

end MyReplace;

到這里,關于Oracle存儲過程中去掉重復字符串函數(shù)的講解就全部講完了,希望大家都能夠通過上文中的學習有所收獲。


分享文章:Oracle存儲過程中去掉重復字符串函數(shù)
網(wǎng)站鏈接:http://m.5511xx.com/article/ccedcej.html