teradata sql оптимизация справочный тестовый запрос - PullRequest
0 голосов
/ 05 сентября 2018

Мне нужна помощь по некоторому коду оптимизации teradata sql. Приведенный ниже код, который я запускаю, просто чтобы увидеть, возвращает ли это какие-либо записи. Этот запрос выполняется уже 19 минут. Мне просто нужен быстрый запрос, чтобы увидеть, есть ли какие-либо результаты этого запроса. Как я могу оптимизировать этот тестовый запрос? Мне просто нужно посмотреть, возвращает ли это какие-либо результаты для любого дня месяца. Похоже, что первичный ключ - txn_id, а раздел таблицы - PRD_END_DT. Спасибо за вашу помощь.

SELECT top 2000 PRD_END_DT, RECORD_ID, TRAN_DIM_NB, TXN_ID, APPL_ID, CHANNEL_ID,
        ENTRY_DATE_DT, ENTRY_DATE_TM, SERVER_ID, SRC_ENTRY_DATE_DT, SRC_ENTRY_DATE_TM,
        USER_ID, USER_ID_TYPE, TXN_TYPE, SESSION_ID, TXN_CAT_CD, UNQ_TXN_ID
FROM    ICDW_FL_GBL_V.LDA_CIG_TXNS_SLT_TXN_DAILY
 where prd_end_dt = to_date('08/01/2017', 'MM/DD/YYYY') 

1 Ответ

0 голосов
/ 05 сентября 2018
SELECT top 2000 PRD_END_DT
      , RECORD_ID
      , TRAN_DIM_NB
      , TXN_ID
      , APPL_ID
      , CHANNEL_ID
      , ENTRY_DATE_DT
      , ENTRY_DATE_TM
      , SERVER_ID
      , SRC_ENTRY_DATE_DT
      , SRC_ENTRY_DATE_TM
      , USER_ID
      , USER_ID_TYPE
      , TXN_TYPE
      , SESSION_ID
      , TXN_CAT_CD
      , UNQ_TXN_ID
FROM    ICDW_FL_GBL_V.LDA_CIG_TXNS_SLT_TXN_DAILY
WHERE prd_end_dt = to_date('08/01/2017', 'MM/DD/YYYY') 

убедитесь, что у вас есть действительный индекс (вторичный индекс) для таблицы ICDW_FL_GBL_V.LDA_CIG_TXNS_SLT_TXN_DAILY столбец prd_end_dt

CREATE INDEX your_idx (prd_end_dt) ON LDA_CIG_TXNS_SLT_TXN_DAILY;
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...