用sql*plus,分隔符是set colsep '',換行符不知怎么設(shè)...也許可以查找替換
網(wǎng)站建設(shè)哪家好,找成都創(chuàng)新互聯(lián)!專注于網(wǎng)頁設(shè)計(jì)、網(wǎng)站建設(shè)、微信開發(fā)、微信小程序開發(fā)、集團(tuán)企業(yè)網(wǎng)站建設(shè)等服務(wù)項(xiàng)目。為回饋新老客戶創(chuàng)新互聯(lián)還提供了阜新免費(fèi)建站歡迎大家使用!
set colsep ''
set echo off newpage 0 space 0 pagesize 0 feed off head off trimspool on
spool test.dat
select * from test
spool off
with temp as
(
select name as text from a
)
select substr(text,instr(text,',',1,rn)+1,instr(text,',',1,rn+1)-instr(text,',',1,rn)-1) text from
(
select ','||t1.text||',' text,t2.rn from
(select text,length(text)-length(replace(text,',',''))+1 rn from temp) t1,
(select rownum rn from all_objects where rownum = (select max(length(text)-length(replace(text,',',''))+1) rn from temp)) t2
where t1.rn = t2.rn order by text,rn
)
用這種方法可以處理name這一列,如果你想ID、NAME都先顯示的話,就要寫成一個(gè)函數(shù)來調(diào)用了。
oracle是塊結(jié)構(gòu)語言,oracle程序劃分成幾個(gè)部分,并在每個(gè)部分中寫入邏輯代碼塊,每個(gè)塊由三個(gè)子部分組成。
聲明部分:此部分是以關(guān)鍵字DECLARE開頭。這是一個(gè)可選部分,并定義了程序中要使用的所有變量,游標(biāo),子程序和其他元素。
可執(zhí)行命令部分:此部分包含在關(guān)鍵字BEGIN和END之間,這是一個(gè)強(qiáng)制性部分。由程序的可執(zhí)行oracle語句組成。應(yīng)該有至少一個(gè)可執(zhí)行代碼行,可以只是一個(gè)NULL命令,表示不執(zhí)行任何操作。
異常處理部分 :此部分以關(guān)鍵字EXCEPTION開頭。這是一個(gè)可選部分,包含處理程序中錯(cuò)誤的異常。
每個(gè)oracle語句以分號(;)結(jié)尾。使用BEGIN和END可以將oracle塊嵌套在其他oracle塊中。以下是Poracle塊的基本結(jié)構(gòu)。
Hello World示例:
END;行表示oracle塊的結(jié)尾。要從oracle命令行運(yùn)行代碼,需要在代碼的最后一行之后鍵入/字符。當(dāng)上述代碼在oracle提示符下執(zhí)行時(shí),它會(huì)產(chǎn)生以下結(jié)果:
oracle標(biāo)識符:oracle標(biāo)識符是常量,變量,異常,過程,游標(biāo)和保留字。標(biāo)識符包括一個(gè)字母,可選地后跟多個(gè)字母,數(shù)字,美元符號,下劃線和數(shù)字符號,不得超過30個(gè)字符。
默認(rèn)情況下,標(biāo)識符不區(qū)分大小寫。例如,可以使用integer或INTEGER來表示一個(gè)數(shù)值。 不能使用保留關(guān)鍵字作為標(biāo)識符。
擴(kuò)展資料
oracle注釋程序:注釋可以在編寫的oracle代碼中包含的說明性文字,并幫助其他人閱讀源代碼。所有編程語言都允許某種形式的注釋。
oracle支持單行和多行注釋。注釋中的所有字符都被oracle編譯器忽略。oracle單行注釋以分隔符開頭 --(雙連字符),多行注釋由/*和*/括起來。
當(dāng)上述代碼在oracle提示符下執(zhí)行時(shí),會(huì)產(chǎn)生以下結(jié)果:
oracle變量的名稱由可選的字母,數(shù)字,美元($)符號,下劃線和數(shù)字符號組成,不能超過30個(gè)字符。 默認(rèn)情況下,變量名不區(qū)分大小寫。不能將保留的oracle關(guān)鍵字用作變量名稱。
oracle編程語言允許定義各種類型的變量,如:日期時(shí)間數(shù)據(jù)類型,記錄,集合等,我們將在后面的章節(jié)中介紹。 在本章中僅學(xué)習(xí)基本的變量類型。
首先,看你是想導(dǎo)出成文本,還是直接插表里
要是導(dǎo)出的話,用spool就行
你那個(gè)試試,用下面三句
spool e:\log.txt; (當(dāng)然隨便放什么地方,起什么名,路徑對了就行)
select bif_code||','||name||';' from bis_bif_init;
spool off;
然后你去路徑哪里找那個(gè)log.txt,里面就是你說那格式的,這格式可以調(diào)整
你要想放表里也行中間那句可以換成
select 'insert into bis_bif_init( 新列名 ) values(' ||bif_code|| ',' || name || ') where xxx;' from bis_bif_init;
就是說格式自己定,''中想加啥加啥用||連起來就行。同樣去找txt,格式就是你定的那樣。
-------------------------------------------------------------------------------------------
這是一種txt的,還有一個(gè),如果你想在這個(gè)表的新列里直接顯示加逗號那個(gè)格式的,也可以。就不用txt了,下次直接導(dǎo)出該列就行。但需要在表里加個(gè)列
alter table BIS_BIF_INIT add xxx(新列名字) char(100) generated always as (bif_code||','||name);
然后表里就有這個(gè)拼好的列,可能字符會(huì)很多,定大點(diǎn)
------------------------------------------------------------------------------------
最后一種,直接建個(gè)視圖得了,省事,就一句話
create view vie_bis_bif_init as bif_code||','||name||';' from bis_bif_init;
oracle 中可以用connect by把字符串按都好分割:
比如定義字符串:
pv_no_list :='23,34,45,56';
SELECT DISTINCT REGEXP_SUBSTR (pv_no_list,'[^,]+',1,LEVEL) as "token"
FROM DUAL
CONNECT BY REGEXP_SUBSTR (pv_no_list,'[^,]+',1,LEVEL) IS NOT NULL
order by 1
返回結(jié)果:
TOKEN
23
34
45
56
標(biāo)題名稱:oracle分隔符怎么用,oracle 分隔符拆分
網(wǎng)站地址:http://jinyejixie.com/article4/dssehoe.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供面包屑導(dǎo)航、ChatGPT、外貿(mào)網(wǎng)站建設(shè)、靜態(tài)網(wǎng)站、自適應(yīng)網(wǎng)站、網(wǎng)站策劃
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)