把給定的乙個字串分割 並轉換成多行資料顯示

2021-08-29 22:26:40 字數 1041 閱讀 5793

作用:如把字串「1,2,3」用sql查詢出來分別是1,2,3三行顯示

首先定義乙個資料表型別

create or replace type mytabletype as table of number

定義乙個function

create or replace function strtab(p_str   in   varchar2) return mytabletype

/*****************************************====

版本:v0.1

名稱:對字串(用逗號分開的)轉換成列分開後的各個列

作用:針對版本整體對比功能使用

建立:huqy,2009-04-14

****************************************====

*/as

lstr varchar2(1000) default p_str||',';

ln number;

ldata mytabletype:=mytabletype();

begin

loop

ln:=instr(lstr,',');

exit when (nvl(ln,0)=0);

ldata.extend;

ldata(ldata.count):=ltrim(rtrim(substr(lstr,1,ln-1)));

lstr:=substr(lstr,ln+1);

end loop;

return ldata;

end;

最後使用這個function來達到目的

select column_value as yourid from table(cast(strtab('1,2,3') as mytabletype))

第75題 給定乙個字串,將它轉換成整數

實現乙個myatoi string s 函式,使其能將字串轉換成乙個 32 位有符號整數 類似 c c 中的 atoi 函式 函式 myatoi string s 的演算法如下 1 讀入字串並丟棄無用的前導空格 2 檢查下乙個字元為正還是負號,讀取該字元。確定最終結果是負數還是正數。如果兩者都不存在...

用C 中的另乙個字串分割乙個字串

我一直在使用split 方法來拆分字串,但這僅在按字元拆分字串時才起作用。有沒有辦法分割乙個string,另乙個字串是按引數分割?我試過將拆分器轉換為字元陣列,但是沒有運氣。換句話說,我想分割string thexxquickxxbrownxxfox 通過xx,並返回具有值的陣列 the,quick...

將乙個字串中的字元替換成另乙個字串

被替換的字串當然不僅僅是空格,上面只是個例子 include include include using namespace std int findnumberfirst const char str,const char dest,vector pvec else return count in...