[ 5. Devon SQL - IN 조건 ]
1. 정의
sql문장에서 in조건에 몇건이 올지 모른다.
그래서 ArrayList를 이용해서 값을 넣고, sql단에서 iterate와 conjuction을 이용해서 in조건을 완성한다.
2. java단
1 2 3 4 5 6 7 8 9 10 11 12 13 | if (lmData.getDataCount()!= 0 ){ List< String > roleList = new ArrayList< String >(); String str = null ; for ( int i= 1 ,cnt=lmData.getDataCount();i<=cnt;i++){ str = new StringBuilder( "MIN(decode(ppp.role_id," ).append(i) .append( ", ppp.authority_type)) AS role" ) .append(i).toString(); roleList.add(str); } inData. set ( "roleList" ,roleList); } LMultiData resultData = dao.executeQuery( "admn/admn020fQry/retrieveUserRoleManagement" , inData); |
1 2 3 4 5 6 7 8 9 10 11 12 13 | <statement name = "retrieveUserRoleManagement" > <![CDATA[ / admn.admn020fQry.retrieveUserRoleManagement / SELECT acol {#colList} , zcol FROM dual ]]> <append condition= "${roleList}.NOTEMPTY" id= "#colList" iterate= "${roleList}" conjuction= "," > ,${roleList: not } </append> </statement> |
4. 별도 방법 도 존재 함
- dynamic sql문장을 이용해도 됨
- java단
. vo.setColId1("'a','c','d'");
'Web. 기타 언어 > Devon-SQL' 카테고리의 다른 글
4. Devon SQL Procedure 호출 (테이블용) (0) | 2017.01.25 |
---|---|
3. Devon SQL Procedure 호출 (0) | 2017.01.25 |
2. Devon IF 문장 (7) | 2017.01.25 |
1. Devon SQL 변수 처리 (4) | 2017.01.25 |