首页 > 数据库技术 > 详细

oracle--批量删除部分表,将某一列拼接成字符串

时间:2019-09-17 10:24:28      阅读:124      评论:0      收藏:0      [点我收藏+]

1、查询要批量删除的表

SELECT *  FROM USER_TABLES
SELECT ‘DROP ‘||‘TABLE ‘ || TABLE_NAME ||‘ ;‘ ,1 FROM USER_TABLES WHERE TABLE_NAME LIKE ‘T_DIM%‘;

 

2、创建临时表

CREATE  TABLE tab_xn_ddd (names varchar2(100),idd number(2));

  

3、将要删除的表结果插入到数据库中

insert into hos_tab_xn_ddd  
SELECT ‘DROP ‘||‘TABLE ‘ || TABLE_NAME ||‘ ;‘ ,1 FROM USER_TABLES WHERE TABLE_NAME LIKE ‘T_DIM%‘;

  

4、将结果拼接成字符串

select idd, replace(to_char(wm_concat(names)),‘,‘,‘‘) from hos_tab_xn_ddd group by idd;

  

5、删除临时表

DROP table tab_xn_ddd ;

  

问题:1、结果没有使用换行

制表符 chr(9)
换行符 chr(10)
回车符 chr(13)

  

select ‘ update ‘ || table_name ||
       ‘ set VALID_STATE =‘‘0A‘‘;‘||chr(13)||‘ commit;‘
  from user_tables

  

2、如果不重要可以直接删除表空间,重新创建

  没有英汉互译结果
  请尝试网页搜索

oracle--批量删除部分表,将某一列拼接成字符串

原文:https://www.cnblogs.com/eadela/p/11531661.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!