EXEC SQL Create Table tempdb..YieldSectnTbl ( YieldSectn varchar(2) ,AcctQty int ,AssetDivAmt int ,GenConvAmt int ,SellApplcAmt int ,ProfAmt int ,EAmt int) ;
for (RowCnt = 0; (RowCnt < 22) ; RowCnt++) { itoa_n(H_YieldSectnTmp,RowCnt+1,2);
EXEC SQL INSERT INTO tempdb..YieldSectnTbl Values(:H_YieldSectnTmp,0,0,0,0,0,0) ; }
EXEC SQL SELECT B.YieldSectn, isnull(sum(A.AcctQty),0), isnull(sum(A.AssetDivAmt),0), isnull(sum(A.GenConvAmt),0), isnull(sum(A.SellApplcAmt),0), isnull(sum(A.ProfAmt),0), isnull(sum(A.EAmt),0) INTO :H_YieldSectn, :H_AcctQty, :H_AssetDivAmt, :H_GenConvAmt, :H_SellApplcAmt, :H_ProfitAmt, :H_EAmt FROM IFMASTER..IFM_HMA_BR_YIELD_RST A(index IFM_HMA_BR_YIELD_RST_X) ,tempdb..YieldSectnTbl B WHERE A.Date = :H_chDate AND A.PersLeglPSect in ( :H_CustTypeCd1, :H_CustTypeCd2 ) AND A.PgmCd like :H_PgmId + '%' AND A.YieldSectn =* B.YieldSectn GROUP BY B.YieldSectn AT ISOLATION 0 ;
여기에서 outerJoin할때 A.Yieldsectn *= B.YieldSectn 하면 조회건수가 있는데요 위와 같이 하면 건수 0로 나옵니다. 분명히 SQL 쿼리로 돌리면 둘다 나오는데요.. Pro*c로 돌리면 sqlca.sqlerrd[2]값이 0가 나오는 까닭이 무었인지 궁금합니다.
고수님들의 답변 기다리겠습니다 . |