본문 바로가기

Database/오류

[오류] Parameter index out of range (2 > number of parameters, which is 1).

 

Parameter index out of range (2 > number of parameters, which is 1).

 

전달되는 파라미터는 두개인데 SQL쿼리문에서 사용하는 건 하나여서 난 오류.

전달하는 파라미터에 code를 추가했는데 where절에 code = #{code} 추가를 안했다.

 

<select id="메소드명" parameterType="Map" resultType="Map">
        with value as (
            select entity_id
                 ,  json_arrayagg(
                        json_object(
                                "id", id
                             ,  "seq", seq
                             ,  "text", text
                             ,  "code", code
                        )) as 'val'
            from (테이블1)
            where id = #{Id} and code = #{code}
        )
        select /* 요기 주석 맨 끝 슬래쉬도 없어서 수정 후에도 같은 오류가 또 남 */
              id as 'id'
            , name as 'name'
            , script as 'script'
            , value.val as 'val'
        from (테이블2)
        left join value on value.id = (테이블2).id
       where (테이블2)_id = #{id} and (테이블2).code = #{code}
       group by (테이블2).id
       order by (테이블2).id
    </select>