У меня есть Perl-скрипт, в котором мы используем sql-запрос в 2 местах.
первый запрос производит имя таблицы.это дает около 100 имен таблиц.затем мы применяем циклическое и передаваемое имя таблицы один за другим к запросу, который выдает данные, основанные на имени таблицы.
Есть ли возможность объединить оба запроса?
(select table_owner ||'.' ||table_name as table_name from ALL_TAB_MODIFICATIONS where TIMESTAMP >= sysdate -80 and table_owner in ('AXIOM_DATA','AXIOM_DATA2','AXIOM_META','AXIOM_META2') and table_name like 'RPTD_%')
MINUS
(select owner || '. ' ||object_name as table_name from dba_objects where created >= sysdate -80 and owner in ('AXIOM_DATA','AXIOM_DATA2','AXIOM_META','AXIOM_META2') and object_name like 'RPTD_%' and object_type = 'TABLE');
Приведенный выше запрос дает около 100 имен таблиц.затем
SELECT AS_OF_DATE, AS_OF_DATE, SHEET_NAME, SHEET_NUMBER, ROW_NUMBER, COL_NUMBER, CELL_NAME, CELL_VARCHAR_VALUE, CELL_FLOAT_VALUE, CELL_DATE_VALUE, DATA_TYPE, to_char(to_timestamp(to_char(AS_OF_DATE,'DD-MON-YY HH24.MI.SS'),'DD-MON-YY HH24.MI.SS'),'DD-MON-YY HH24.MI.SS') AS AS_OF_TMPSTMP
FROM $table_name WHERE AS_OF_DATE IN (
(SELECT AS_OF_DATE FROM $table_name WHERE CELL_NAME ='CONFIRM_ADJ' AND UPPER(CELL_VARCHAR_VALUE)='Y'
AND AS_OF_DATE IN (SELECT AS_OF_DATE FROM $table_name WHERE LOWER(CELL_VARCHAR_VALUE) LIKE '%focus%report%' AND to_char(AS_OF_DATE, 'YYYYMM')= '201806')));
этот запрос дает вывод на основе каждой таблицы.для этого мы используем цикл и передачу таблицы один за другим.Есть ли в любом случае, чтобы присоединиться к обоим столам.