执行一个语句耗时很长,为啥?
现在有一张tbl_fm_tmp_event_log表,包含32个字段,分别在i_serial_no,DT_GEN_TIME字段上建了索引,并且表中有十万多条记录,
在sqlplus中,执行以下语句竟然要耗时几十秒钟
DELETE FROM cgp_1.tbl_fm_tmp_event_log WHERE i_serial_no IN(SELECT i_serial_no FROM (SELECT i_serial_no FROM cgp_1.tbl_fm_tmp_event_log ORDER BY DT_GEN_TIME)
WHERE ROWNUM <= 1);
但是我单独执行SELECT i_serial_no FROM (SELECT i_serial_no FROM cgp_1.tbl_fm_tmp_event_log ORDER BY DT_GEN_TIME) WHERE ROWNUM <= 1 或DELETE FROM cgp_1.tbl_fm_tmp_event_log WHERE ROWNUM <= 1; 都很快。
不知道为什么?