2016-12-15 62 views

回答

0

您可以創建數據的內容插入到該表的表的表和名稱。
創建一個表:

create table My_table (table_name varchar2(50), column_name varchar2(50)); 

以下查詢插入表名到MY_TABLE它們全有你的數據:

declare 
    l_cnt  varchar2(20); 
    Query_str varchar2(100); 
begin 
    FOR i IN (SELECT o.object_Name, OBJECT_TYPE 
       FROM user_objects o 
      WHERE o.OBJECT_TYPE = 'TABLE') LOOP 
    for j in (SELECT column_name 
       FROM all_tab_cols 
       WHERE table_name = i.object_name) loop 

     Query_str := 'select count(*) from ' || i.object_name || 
        ' where to_char(' || j.column_name || ') = ''[Your_data]'''; 
     execute immediate Query_str 
     into l_cnt; 
     if l_cnt > 0 then 
     insert into my_table 
      (table_name, column_name) 
     values 
      (i.object_name, j.column_name); 
     end if; 
    end loop; 
    end loop; 
end; 

後,如果任何表中有你的數據,MY_TABLE顯示他們
我希望能幫助你。

+0

我現在編輯查詢,請測試它 –

相關問題