@I_DC_CD VARCHAR(10)
,@I_NOT_FLAG CHAR(1) = NULL
2개의 값을 받아서 @I_NOT_FLAG 이 변수를 조건에 걸고 싶을때
if ( ISNULL(@I_NOT_FLAG, 'N') = 'N' ) {
M.DC_CD = ISNULL(@I_DC_CD, M.DC_CD)
] else if ( ISNULL(@I_NOT_FLAG, 'N') = 'Y' ) {
M.DC_CD != ISNULL(@I_DC_CD, M.DC_CD)
}
위 내용대로 짜고 싶다면 아래처럼 하면된다
AND (((ISNULL(@I_NOT_FLAG, 'N') = 'N')AND( M.DC_CD = ISNULL(@I_DC_CD, M.DC_CD) ))
OR((ISNULL(@I_NOT_FLAG, 'N') = 'Y')AND( M.DC_CD != ISNULL(@I_DC_CD, M.DC_CD) )))
AND ( ((조건) AND (결과)) or ((조건) AND (결과)) )
복잡해 보이지만 잘 보면 쉬워요^^
'개발 > DB' 카테고리의 다른 글
[MS-SQL] mssql 소수점 연산 방법 (0) | 2017.09.11 |
---|---|
MSSQL Cursor(커서) 란? (0) | 2017.09.08 |
[MS SQL] mssql loop 반복문 (0) | 2017.09.07 |
oracle 날짜 포맷 (0) | 2017.08.30 |
MS-SQL 날짜형식 SELECT (0) | 2017.08.29 |