오라클 쿼리 무한로딩 문제가 발생합니다. 0 2 2,985

by 피터슨 [Oracle 기초] [2017.06.09 18:58:58]


select KORNAME, RPY_CLS_SEQ, MED_DT, MIF_GUBUN, ORD_ID, ORD_CD,
      ( select nvl(sum( OWNAMT ),0) from HPMED 
        where ORD_ID = A.ORD_ID and ORD_CD = A.ORD_CD and MED_DT = A.MED_DT and RPY_PACT_ID = '123456 ) as OWNAMT,
      ( select nvl(sum( SPCPRICE ),0) from HPME
        where ORD_ID = A.ORD_ID and ORD_CD = A.ORD_CD and MED_DT = A.MED_DT and RPY_PACT_ID = '123456' ) as SPCPRICE
        from HPME A where RPY_PACT_ID = '123456' and MIF_GUBUN = 'G' and INSTYPE not like '%*%' order by MED_DT, KORNAME

안녕하세요 위와 같은 쿼리를 이용하여 금액을 합해서 보여주고 싶습니다.

툴로 돌렸을 때는 문제없이 돌아가는데 자바랑 연동해서 돌릴려고 하면 무한로딩이 발생하고 있습니다.

혹시 어떤 문제인지 알 수 있을까요? 

by 마농 [2017.06.12 08:34:04]

데이터가 많아서 느린 것 아닌가요?                                
각테이블 키와 관계는 어떻게 되나요?                              
인덱스는 어떻게 되나요?                                          
스칼라서브쿼리를 조인 형태로 바꿀 수는 없나요?                   
spcprice 의 경우는 동일 테이블이므로 분석함수를 이용해도 되겠네요.
 


by 부쉬맨 [2017.06.12 10:41:35]

자바에서 돌릴경우 그전 로직에서 트랜잭션 처리하는 부분이 존재하나요?

거기에 커밋을 이나 롤백 처리하지않으면 저런현상이 발생될수 있습니다.

댓글등록
SQL문을 포맷에 맞게(깔끔하게) 등록하려면 code() 버튼을 클릭하여 작성 하시면 됩니다.
로그인 사용자만 댓글을 작성 할 수 있습니다. 로그인, 회원가입