oracle一列拆分為多列
資料如上圖所示
需要將資料name 按照空格進行炒粉多列
1、首先判斷name列最長的空格個數是多少:
select max(length(regexp_replace(name,'[^ ]+',''))) from czx;
可見,最長的空格個數是8,那麼我們就創造如下sql:
select id, f_new_rowit(name, ' ', 1) v1, f_new_rowit(name, ' ', 2) v2, f_new_rowit(name, ' ', 3) v3, f_new_rowit(name, ' ', 4) v4, f_new_rowit(name, ' ', 5) v5, f_new_rowit(name, ' ', 6) v6, f_new_rowit(name, ' ', 7) v7, f_new_rowit(name, ' ', 8) v8,age from czx ;
在oracle使用者下建立函式f_new_rowit:
create or replace function f_new_rowit(in_text varchar2,--要擷取的字串 fh varchar2,--擷取識別符號 n number)--按第幾個符號擷取 return varchar2 is Result varchar2(4000); begin if n > 1 then SELECT substr(in_text, decode(instr(in_text, fh, n - 1, n - 1), 0, 0, instr(in_text, fh, n - 1, n - 1) + 1), decode(sign(instr(in_text, fh, n, n) - instr(in_text, fh, n - 1, n - 1)), 1, (instr(in_text, fh, n, n) - instr(in_text, fh, n - 1, n - 1)) - 1, -1, length(in_text), 0, 0) ) into Result FROM dual; else select substr(in_text, 0, instr(in_text, fh, 1, 1) - 1) into Result from dual; end if; return(Result); end f_new_rowit;
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/30345407/viewspace-2916179/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- Excel將一列資料變為兩列Excel
- oracle查詢語句查詢增加一列內容Oracle
- SQLServer中多行中的一列根據條件合併為一行中的一列SQLServer
- 一列寬度固定一列寬度自適應佈局
- Oracle 多行分多列Oracle
- mysql一列多值多屬性設計-亂穿馬路MySql
- oracle中多列轉行Oracle
- 層級查詢並將層級拆分成多列
- Oracle以逗號分隔的字串拆分為多行資料Oracle字串
- 新增一列並增加列欄位註釋
- MySQL:RR分析死鎖一列MySql
- 一列固定寬度居中佈局
- MySQL:RR模式下死鎖一列MySql模式
- pandas指定某一列刪除nanNaN
- 如何將一個pdf拆分為多個單頁pdf?
- 利用 Pandas 將資料集中的某列文字拆分為多行
- mysql資料庫其中一列為null,他會有什麼坑MySql資料庫Null
- MySQL:kill和show命令hang住一列MySql
- OracleDG資料庫gap處理一列Oracle資料庫
- SOLIDWORKS如何批次拆分多配置Solid
- 利用shell中awk和xargs以及sed將多行多列文字中某一列合併成一行
- 一列居中寬度自適應佈局
- python如何判斷一列是否有資料Python
- EXCEL擷取某一列從第一個字元開始到特定字元結束的字串到新的一列Excel字元字串
- SOLIDWORKS多配置批次拆分工具Solid
- 命令列中的拆分與合併命令列
- Oracle vs PostgreSQL DBA(13)- 拆分(split)分割槽OracleSQL
- 加入三行,如果一列中相同的值
- 統一列寬並設定顯示選項
- 為什麼需要拆分NFT?
- .txt檔案透過Excel拆分行/列Excel
- Oracle多列統計資訊與直方圖對有關聯多列查詢影響Oracle直方圖
- oracle 資料庫對於多列求最大值Oracle資料庫
- 點選一列顯示其index的三種方法Index
- VUE-多元素垂直排列,有一列自動填充Vue
- 獲取List集合物件中某一列屬性值物件
- Python - pandas 利用 某一列的值過濾資料Python
- 從結果集中取出某一列的值組裝成新的陣列陣列