2017-12-21 13 views
0

mybatis에서 작업 중입니다. 결과를 얻으려면 아래 쿼리를 실행하려고합니다. 자바 코드에서getSqlSession(). selectOne()이 null을 반환합니다.

<select id="getMaxSeqNumFromTrans" parameterType="com.abc.ContributionsRequestParamDto" resultType="java.lang.Integer" > 
    SELECT MAX(SEQ_NMBR) MAXNUMBER FROM DB2.A_PDC_TRNS WHERE TOKEN_ID = #{tokenID} AND RSLT_TYP = 10 

나는 위의 질의 -

Integer maxSeqNumber = getSqlSession().selectOne("getMaxSeqNumFromTrans", contributionsParam); 

실행하려면이 코드를 사용하고 있습니다하지만이 코드는 나에게 null를 돌려줍니다. 나는 여기서 무엇이 잘못 될지 모른다. 내가 뭐 놓친 거 없니?

+0

'SELECT COALESCE (MAX (SEQ_NMBR), 0) MAXNUMBER ... '사용하려고 시도합니다. –

+0

작동합니다. 정말 고맙습니다 ! – user2998616

+0

이걸 듣기 좋네. 행운을 빌어. –

답변

0

검색어에 문제가있는 것 같습니다. MAX는 where 절에 대한 행이없는 경우 null을 제공합니다.

일부 도구를 통해 서버에서 수동으로 쿼리를 실행 해 보았습니까?

+1

예. 당신 말이 맞아요. @YCF_L에 의해 제안 된 쿼리를 변경했습니다 – user2998616

+0

좋습니다. 다행히 들으니 :) –