0

我需要一些有关 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') 
4

1 回答 1

0
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;
于 2018-09-05T15:51:56.287 回答