下面是存储过程一个游标的select语句(P_STS1,P_STS2,P_FLG,P_FILE_ID为传进来得参数):
SELECT A.aa
,A.ab
,A.ac
,A.ad
,C.ca
,C.cb
,C.cc
FROM A,B,C WHERE A.a0 = B.a0
AND A.aa = B.aa
AND A.ab = B.ab
AND A.ac = B.ac
AND A.ad = B.adAND A.a0 = C.a0
AND A.aa = C.aa
AND A.ab = C.ab
AND A.ac = C.ac
AND A.ad = C.adAND B.file_id = C.file_idAND A.ae >= P_STS1
AND A.ae <= P_STS2AND b.ba = P_FLGAND (( P_FILE_ID IS NOT NULL AND
B.file_id <> P_FILE_ID) AND
C.cc <> P_SUB_SYSTEM)
OR P_FILE_ID IS NULL)请问如何优化这个sql语句,where条件如何排序,A B C三个表建什么样的索引?
谢谢!!!
SELECT A.aa
,A.ab
,A.ac
,A.ad
,C.ca
,C.cb
,C.cc
FROM A,B,C WHERE A.a0 = B.a0
AND A.aa = B.aa
AND A.ab = B.ab
AND A.ac = B.ac
AND A.ad = B.adAND A.a0 = C.a0
AND A.aa = C.aa
AND A.ab = C.ab
AND A.ac = C.ac
AND A.ad = C.adAND B.file_id = C.file_idAND A.ae >= P_STS1
AND A.ae <= P_STS2AND b.ba = P_FLGAND (( P_FILE_ID IS NOT NULL AND
B.file_id <> P_FILE_ID) AND
C.cc <> P_SUB_SYSTEM)
OR P_FILE_ID IS NULL)请问如何优化这个sql语句,where条件如何排序,A B C三个表建什么样的索引?
谢谢!!!
,A.ab
,A.ac
,A.ad
,C.ca
,C.cb
,C.cc
FROM A
left join B on ( A.a0 = B.a0
AND A.aa = B.aa
AND A.ab = B.ab
AND A.ac = B.ac
AND A.ad = B.ad)left join C on
( A.a0 = C.a0
AND A.aa = C.aa
AND A.ab = C.ab
AND A.ac = C.ac
AND A.ad = C.ad
)where B.file_id = C.file_id AND A.ae > = P_STS1
AND A.ae <= P_STS2 AND b.ba = P_FLG AND ((( P_FILE_ID IS NOT NULL AND
B.file_id <> P_FILE_ID) AND
C.cc <> P_SUB_SYSTEM)
OR P_FILE_ID IS NULL) 我会的不多,希望可以帮到LZ