SELECT XT.TCODE,
TD.RTEAM_LEVEL1+'-'+RTEAM_LEVEL1_DESC TNAME1,
TD.RTEAM_LEVEL2+'-'+RTEAM_LEVEL2_DESC TNAME2,
TD.RTEAM_LEVEL3+'-'+RTEAM_LEVEL3_DESC TNAME3,
AUXREASON,AUXCOUNT,AUXTIME FROM
(
SELECT T.TEAM_CODE AS TCODE,cast(R.REASON_CODE as varchar)+'-'+R.REASON_NAME AS AUXREASON,
sum(X.RAUX_REASON_CONT) AS AUXCOUNT,sum(X.RAUX_REASON_TIME) AS AUXTIME
FROM REP_AUX_REASON_DAY AS X,TEAM AS T,AUX_REASON AS R,TEAM TS
WHERE X.AG_TEAM =* TS.TEAM_CODE
AND X.RAUX_REASON_CODE =* R.REASON_CODE
AND TS.TEAM_PATH LIKE T.TEAM_PATH+'%'
AND ( T.TEAM_CODE='T1110' OR T.TEAM_CODE='T1120' OR T.TEAM_CODE='T1130' OR T.TEAM_CODE='T1180'
OR T.TEAM_CODE='T1210' OR T.TEAM_CODE='T1220' OR T.TEAM_CODE='T2110'
OR T.TEAM_CODE='T2180' )
and
RAUX_REPORT_DATE >= '2007/04/01'
and RAUX_REPORT_DATE < convert(datetime,'2007/04/17')+1
group by T.TEAM_CODE,R.REASON_CODE,R.REASON_NAME
)
AS XT,REP_TEAM_DAY TD
WHERE XT.TCODE *= TD.RTEAM_CODE ORDER BY TNAME1,TNAME2,TNAME3,AUXREASON 想将这个sql转到oracle上去,而且要解决两个外连问题,我试过了总是有点小问题,求高手指点。
TD.RTEAM_LEVEL1+'-'+RTEAM_LEVEL1_DESC TNAME1,
TD.RTEAM_LEVEL2+'-'+RTEAM_LEVEL2_DESC TNAME2,
TD.RTEAM_LEVEL3+'-'+RTEAM_LEVEL3_DESC TNAME3,
AUXREASON,AUXCOUNT,AUXTIME FROM
(
SELECT T.TEAM_CODE AS TCODE,cast(R.REASON_CODE as varchar)+'-'+R.REASON_NAME AS AUXREASON,
sum(X.RAUX_REASON_CONT) AS AUXCOUNT,sum(X.RAUX_REASON_TIME) AS AUXTIME
FROM REP_AUX_REASON_DAY AS X,TEAM AS T,AUX_REASON AS R,TEAM TS
WHERE X.AG_TEAM =* TS.TEAM_CODE
AND X.RAUX_REASON_CODE =* R.REASON_CODE
AND TS.TEAM_PATH LIKE T.TEAM_PATH+'%'
AND ( T.TEAM_CODE='T1110' OR T.TEAM_CODE='T1120' OR T.TEAM_CODE='T1130' OR T.TEAM_CODE='T1180'
OR T.TEAM_CODE='T1210' OR T.TEAM_CODE='T1220' OR T.TEAM_CODE='T2110'
OR T.TEAM_CODE='T2180' )
and
RAUX_REPORT_DATE >= '2007/04/01'
and RAUX_REPORT_DATE < convert(datetime,'2007/04/17')+1
group by T.TEAM_CODE,R.REASON_CODE,R.REASON_NAME
)
AS XT,REP_TEAM_DAY TD
WHERE XT.TCODE *= TD.RTEAM_CODE ORDER BY TNAME1,TNAME2,TNAME3,AUXREASON 想将这个sql转到oracle上去,而且要解决两个外连问题,我试过了总是有点小问题,求高手指点。
SELECT XT.TCODE,
TD.RTEAM_LEVEL1||'-'||RTEAM_LEVEL1_DESC TNAME1,
TD.RTEAM_LEVEL2||'-'||RTEAM_LEVEL2_DESC TNAME2,
TD.RTEAM_LEVEL3||'-'||RTEAM_LEVEL3_DESC TNAME3,
AUXREASON,AUXCOUNT,AUXTIME FROM
(
SELECT T.TEAM_CODE AS TCODE,cast(R.REASON_CODE as varchar2(100))||'-'||R.REASON_NAME AS AUXREASON,
sum(X.RAUX_REASON_CONT) AS AUXCOUNT,sum(X.RAUX_REASON_TIME) AS AUXTIME
FROM REP_AUX_REASON_DAY AS X,TEAM AS T,AUX_REASON AS R,TEAM TS
WHERE X.AG_TEAM =TS.TEAM_CODE(+)
AND X.RAUX_REASON_CODE =R.REASON_CODE(+)
AND TS.TEAM_PATH LIKE T.TEAM_PATH+'%'
AND ( T.TEAM_CODE='T1110' OR T.TEAM_CODE='T1120' OR T.TEAM_CODE='T1130' OR T.TEAM_CODE='T1180'
OR T.TEAM_CODE='T1210' OR T.TEAM_CODE='T1220' OR T.TEAM_CODE='T2110'
OR T.TEAM_CODE='T2180' )
and
RAUX_REPORT_DATE >= to_date('2007/04/01','YYYY/MM/DD')
and RAUX_REPORT_DATE < TO_DATE('2007/04/17','YYYY/MM/DD')+1
group by T.TEAM_CODE,R.REASON_CODE,R.REASON_NAME
)
XT,REP_TEAM_DAY TD
WHERE XT.TCODE(+)= TD.RTEAM_CODE ORDER BY TNAME1,TNAME2,TNAME3,AUXREASON
m没有表结构,连接的事情就不好说了