oracle中字符串與表數據拼接的用法--“||”


 

    測試過程中,經常需要批量刪除或者插入、修改一些表數據或結構,使用手工復制、粘貼其實很麻煩,所以這是我們就可以使用拼接成sql語句的方法來實現操作數據。下面先講講oracle中拼接符 || 的用法,如下:

語法如下:

select " "||table.values||" " from tablename where ...

其中引號內的是需要拼接的字符串

 

  示例一,清除某所有表的表數據:

1、我們知道,oracle是帶有一些自帶的系統表的,如dba_tables,里面包含有oracle的所有表及所屬用戶,這樣我們就可以拼接刪除所有表數據的sql了,然后復制出sql執行就可以了。

語法

select 'delete from '||tb.TABLE_NAME||';' from dba_tables tb where tb.OWNER='IOS_BJ'    #注意拼接字符串時要加空格,不然會連接在一起

執行結果如下:

 

 

示例二,將2個表之間的關聯關系插入第三個表,拼接成 insert into tablename values(parameter,parameter2.....)

select 'insert into SMBH_KEFU_WARNING_10019_qx values("' || mm.user_id || '","' ||
(kk.sub4_id || '@' || kk.sub6_id || '@' || kk.eventlevel) || '");' 用戶與事件關聯關系sql
from smbh_kefu_warning_10019 mm, SMBH_KEFU_EVENT_10019 kk
where mm.cities in ('越秀區', '天河區') and kk.eventname = 'test測試'

執行結果如下:

 

特別備注:

1、特別注意,字符串只能用單引號“'”,不能使用雙引號
2、如果查詢出的表字段要以字符串出入新的字段,不能直接加單引號',需要加2個單引號''進行轉譯

 

 

參考博客:https://www.cnblogs.com/chinhr/archive/2011/11/14/2248221.html

      


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM