Oracle
 sql >> डेटाबेस >  >> RDS >> Oracle

Oracle को स्तंभ मान के आधार पर तालिका के नाम मिलते हैं

यह क्वेरी (गैर-बहिष्कृत) XMLTABLE का उपयोग करके एक चरण में की जा सकती है।

नमूना स्कीमा

--Table-1 and Table-2 match the criteria.
--Table-3 has the right column but not the right value.
--Table-4 does not have the right column.
create table "Table-1" as select '1234' employee_id from dual;
create table "Table-2" as select '1234' employee_id from dual;
create table "Table-3" as select '4321' employee_id from dual;
create table "Table-4" as select 1          id from dual;

क्वेरी

--All tables with the column EMPLOYEE_ID, and the number of rows where EMPLOYEE_ID = '1234'.
select table_name, total
from
(
    --Get XML results of dynamic query on relevant tables and columns.
    select
        dbms_xmlgen.getXMLType(
            (
                --Create a SELECT statement on each table, UNION ALL'ed together.
                select listagg(
                    'select '''||table_name||''' table_name, count(*) total
                     from "'||table_name||'" where employee_id = ''1234'''
                    ,' union all'||chr(10)) within group (order by table_name) v_sql
                from user_tab_columns
                where column_name = 'EMPLOYEE_ID'
            )
        ) xml
    from dual
) x
cross join
--Convert the XML data to relational.
xmltable('/ROWSET/ROW'
    passing x.xml
    columns
        table_name varchar2(128) path 'TABLE_NAME',
        total      number        path 'TOTAL'
);

परिणाम

TABLE_NAME   TOTAL
----------   -----
Table-1      1
Table-2      1
Table-3      0


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. मौजूद है / मौजूद नहीं है:'1 चुनें' बनाम 'फ़ील्ड चुनें'

  2. ओरेकल रिकॉर्ड इतिहास एक सीमा के भीतर टाइमस्टैम्प के रूप में उपयोग कर रहा है

  3. UTL_FILE.WRITE_ERROR utl_file.put को लूप में कॉल करते समय

  4. Oracle sqlldr टाइमस्टैम्प प्रारूप सिरदर्द

  5. हर 5 मिनट में ताज़ा होने वाला भौतिक दृश्य बनाना