以下SQL:
SELECT COUNT(*) totalCount,
SUM(T.ALL_FREIGHT + T.TAX_FEE + T.SERVICE_FEE) totalFee,
T.pay_state,
T.INVOICE_STATE invoice_state
FROM SYF.T_WB T, SYF.T_ORG
WHERE 1 = 1
AND O.BU_ID IN (50, 51, 52)
AND O.BELONG_ACT_SYS IN (1, 2, 3, 4, 5, 6, 7, 8)
AND T.ORG_ID = O.ORG_ID
AND T.IS_DEL = 0
AND T.CREATED_TIME >= TO_DATE('2017-10-13' || ' 00:00:00', 'YYYY-MM-DD HH24:MI:SS')
AND T.CREATED_TIME <= TO_DATE('2017-10-19' || ' 23:59:59', 'YYYY-MM-DD HH24:MI:SS')
GROUP BY T.pay_state, T.INVOICE_STATE;
T_WB数据在230W+,T_ORG在1W+
在PLSQL里面执行需要1S左右,代码中使用拼接SQL的方式1S多点,
如果使用iBatis的##(PreparedStatement)方式查询则需要5S以上。
如果给这个SQL加上fetchSize=35(上面的SQL会查询出30条左右的结果集),则时间可以快1S左右。
跪求各位大神指教!!!