DEV-ON에서 SQL 배열처리(iterate)

 

1. MSSQL PIVOT의 파라미터는 대괄호로 묶어서 전달됨.

[검색어]

 

2. 정적쿼리

<statement name="empList">

<![CDATA[
SELECT * FROM (
    SELECT 

        empno,
        age,
        dept

    FROM

        EMP

    WHERE 
    	1=1
 	) AS result
    PIVOT (
    	SUM(age)
        FOR 
        dept IN ([A001], [A002], [A003])
     ) as pivot_result
]]>

</statement>

 

 

 

 

3. 동적쿼리

파라미터를 자바단에서 조작(대괄호를 미리 넣어줌)

 

List<String> list = new ArrayList<String>();

list.add("[A001]");
list.add("[A002]");
list.add("[A003]");

LData data = new LData();
data.set("deptList", list);

LCommonDao dao = new LCommonDao("/empList", data, "DS");
LMultiData result = dao.executeQuery();
<statement name="empList">

<![CDATA[
SELECT * FROM (
    SELECT 

        empno,
        age,
        dept

    FROM

        EMP

    WHERE 
    	1=1
 	) AS result
    PIVOT (
    	SUM(age)
        FOR 
        dept IN {#1}
     ) as pivot_result
]]>

<append condition="${deptList}.NOTEMPTY" id="{#1}"  iterate="${deptList}" conjunction=",">
   ${deptList}
</append>

</statement>

 

 

'DEV-ON' 카테고리의 다른 글

Dev-on 프레임워크 프로시저 xml return param  (0) 2022.11.04
DEV-ON IN 쿼리 방법  (0) 2022.09.17
블로그 이미지

엘로드넷

댓글을 달아 주세요