我需要一些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')
答案 0 :(得分: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;