Я пытаюсь найти максимальное значение для поля из всех таблиц в нескольких базах данных. Я использовал Excel для написания запросов для всех 900+ таблиц.
SELECT 'db1' Db,'tbl1' Tbl, MAX(LOAD_DT) AS MAX_LOAD_DT FROM db1.tbl1;
SELECT 'db1' Db,'tbl2' Tbl, MAX(LOAD_DT) AS MAX_LOAD_DT FROM db1.tbl2;
SELECT 'db2' Db,'tbl1' Tbl, MAX(LOAD_DT) AS MAX_LOAD_DT FROM db2.tbl1;
Проблема в том, что возвращается более 900 наборов ответов. Я хотел бы 1 Answerset, который я могу скопировать в Excel для анализа.
Я знаю, что я мог бы изменить SQL, чтобы вставить данные в таблицу, а затем экспортировать из этой таблицы. Тем не менее, я предполагаю, что есть способ написать цикл For-Each (тип). Что-то вроде:
Foreach tablename in tablenamess (SELECT DATABASENAME, TABLENAME, MAX(LOAD_DT) AS MAX_LOAD_DT)
From DBC.TABLESV
WHERE DATABASENAME IN ('Db1', 'Db2')
Возможно ли что-нибудь подобное в Teradata?