sql语句优化
时间:2011-10-18
来源:互联网
sql语句:
SELECT D.START_DATE AS startDate,
D.END_DATE AS endDate,
D.YWFW AS ywfw,
CASE
WHEN D.YWFW LIKE '3%' THEN
'发送'
ELSE
'接收'
END AS cslx,
CASE
WHEN D.YWFW IN ('31', '32', '41') THEN
G.ERROR_INFO
WHEN D.YWFW IN ('42', '43', '44', '45') THEN
'人员信息传输失败'
WHEN D.YWFW = '33' THEN
'缴费信息发送失败'
END AS bz,
'查看明细' AS mx
FROM (SELECT SWJG_DM
FROM DM_SWJG
WHERE YXBZ = 'Y'
CONNECT BY SJ_SWJG_DM = PRIOR SWJG_DM
START WITH SWJG_DM = '23505000000') F,
GF_EXEC_PROCEDURES_RECORD D,
GF_EXEC_PROCEDURES_LOG G
WHERE D.DUMP_SEQ = G.DUMP_SEQ
AND (SELECT X.NSR_SWJG_DM
FROM DJ_NSRXX X
WHERE X.NSRDZDAH = (CASE
WHEN G.NSRDZDAH IS NOT NULL THEN
G.NSRDZDAH
WHEN G.NSRDZDAH IS NULL AND G.PER_ID IS NOT NULL THEN
(SELECT NSRDZDAH FROM GF_SBGRMXXX WHERE PER_ID = G.PER_ID)
ELSE
NULL
END)) = F.SWJG_DM
AND G.ISSUCCESS = 'N'
AND D.YWFW IN ('31', '32', '41', '42', '43', '44', '45');
F5执行计划:

索引:
DJ_NSRXX:NSRDZDAH、NSR_SWJG_DM
GF_EXEC_PROCEDURES_RECORD:YWFW、DUMP_SEQ
GF_EXEC_PROCEDURES_LOG:NSRDZDAH、DUMP_SEQ、PER_ID
GF_SBGRMXXX:PER_ID、NSRDZDAH
其中GF_EXEC_PROCEDURES_LOG、DJ_NSRXX、GF_SBGRMXXX的数据较多,均在百万以上。
麻烦各位大牛帮小弟看下。
SELECT D.START_DATE AS startDate,
D.END_DATE AS endDate,
D.YWFW AS ywfw,
CASE
WHEN D.YWFW LIKE '3%' THEN
'发送'
ELSE
'接收'
END AS cslx,
CASE
WHEN D.YWFW IN ('31', '32', '41') THEN
G.ERROR_INFO
WHEN D.YWFW IN ('42', '43', '44', '45') THEN
'人员信息传输失败'
WHEN D.YWFW = '33' THEN
'缴费信息发送失败'
END AS bz,
'查看明细' AS mx
FROM (SELECT SWJG_DM
FROM DM_SWJG
WHERE YXBZ = 'Y'
CONNECT BY SJ_SWJG_DM = PRIOR SWJG_DM
START WITH SWJG_DM = '23505000000') F,
GF_EXEC_PROCEDURES_RECORD D,
GF_EXEC_PROCEDURES_LOG G
WHERE D.DUMP_SEQ = G.DUMP_SEQ
AND (SELECT X.NSR_SWJG_DM
FROM DJ_NSRXX X
WHERE X.NSRDZDAH = (CASE
WHEN G.NSRDZDAH IS NOT NULL THEN
G.NSRDZDAH
WHEN G.NSRDZDAH IS NULL AND G.PER_ID IS NOT NULL THEN
(SELECT NSRDZDAH FROM GF_SBGRMXXX WHERE PER_ID = G.PER_ID)
ELSE
NULL
END)) = F.SWJG_DM
AND G.ISSUCCESS = 'N'
AND D.YWFW IN ('31', '32', '41', '42', '43', '44', '45');
F5执行计划:

索引:
DJ_NSRXX:NSRDZDAH、NSR_SWJG_DM
GF_EXEC_PROCEDURES_RECORD:YWFW、DUMP_SEQ
GF_EXEC_PROCEDURES_LOG:NSRDZDAH、DUMP_SEQ、PER_ID
GF_SBGRMXXX:PER_ID、NSRDZDAH
其中GF_EXEC_PROCEDURES_LOG、DJ_NSRXX、GF_SBGRMXXX的数据较多,均在百万以上。
麻烦各位大牛帮小弟看下。
作者: wujunxiong 发布时间: 2011-10-18
无图无真相
大致看了下,还是可以优化的,执行计划如何的?
大致看了下,还是可以优化的,执行计划如何的?
作者: java3344520 发布时间: 2011-10-18
具体得看一下执行计划。
作者: lzd_83 发布时间: 2011-10-18

图片太大了,这次要是再看不见就到下面链接来看吧
http://hi.baidu.com/%C9%F1%C0%B4%D6%AE%B1%CA01/album/item/c20d4c627ead4d130d33fa66.html#IMG=c03a9634c726a0f8a71e1231
作者: wujunxiong 发布时间: 2011-10-18

图片太大了,这次要是再看不见就到下面链接来看吧
http://hi.baidu.com/%C9%F1%C0%B4%D6%AE%B1%CA01/album/item/c20d4c627ead4d130d33fa66.html#IMG=c03a9634c726a0f8a71e1231
作者: wujunxiong 发布时间: 2011-10-18
呵呵,链接也看不到
作者: java3344520 发布时间: 2011-10-19
相关阅读 更多
热门阅读
-
office 2019专业增强版最新2021版激活秘钥/序列号/激活码推荐 附激活工具
阅读:74
-
如何安装mysql8.0
阅读:31
-
Word快速设置标题样式步骤详解
阅读:28
-
20+道必知必会的Vue面试题(附答案解析)
阅读:37
-
HTML如何制作表单
阅读:22
-
百词斩可以改天数吗?当然可以,4个步骤轻松修改天数!
阅读:31
-
ET文件格式和XLS格式文件之间如何转化?
阅读:24
-
react和vue的区别及优缺点是什么
阅读:121
-
支付宝人脸识别如何关闭?
阅读:21
-
腾讯微云怎么修改照片或视频备份路径?
阅读:28