개발/DB
ms msql where절 if문 쓰기
료팡
2017. 10. 30. 16:38
@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 (결과)) )
복잡해 보이지만 잘 보면 쉬워요^^