조건문
ASP
' If
If 조건식 Then
구문
End If
' If 한줄
If 조건식 Then 구문
' If ~ Else
If 조건식 Then
구문
Else
예외 구문
End If
' If ~ ElseIf
If 조건식1 Then
구문1
ElseIf 조건식2 Then
구문2
End If
' If ~ ElseIf ~ Else
If 조건식1 Then
구문1
ElseIf 조건식2 Then
구문2
Else
예외 구문
End If
' Select Case
Select Case 변수
Case 비교값1
구문1
Case 비교값2
구문2
Case Else
예외 구문
End Select
JSP/Java
// if
if (조건식) {
구문;
}
// if 한줄
if (조건식) 구문;
// if ~ else
if (조건식) {
구문;
} else {
예외 구문;
}
// if ~ else if
if (조건식1) {
구문1;
} else if (조건식2) {
구문2;
}
// if ~ else if ~ else
if (조건식1) {
구문1;
} else if (조건식2) {
구문2;
} else {
예외 구문;
}
// switch
switch (변수) {
case 비교값1:
구문1;
break;
case 비교값2:
구문2
break;
default:
예외 구문;
}
JSTL
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<!-- if -->
<c:if test="${조건식}">
구문
</c:if>
<!-- choose -->
<c:choose>
<c:when test="${조건식1}">
구문1
</c:when>
<c:when test="${조건식2}">
구문2
</c:when>
<c:otherwise>
예외 구문
</c:otherwise>
</c:choose>
JavaScript
// if
if (조건식) {
구문;
}
// if 한줄
if (조건식) 구문;
// if ~ else
if (조건식) {
구문;
} else {
예외 구문;
}
// if ~ else if
if (조건식1) {
구문1;
} else if (조건식2) {
구문2;
}
// if ~ else if ~ else
if (조건식1) {
구문1;
} else if (조건식2) {
구문2;
} else {
예외 구문;
}
// switch
switch (변수) {
case 비교값1:
구문1;
break;
case 비교값2:
구문2;
break;
default:
예외 구문;
}
Shell Script
# if
if [ 조건식 ]
then
구문
fi
# if ~ else
if [ 조건식 ]
then
구문
else
예외 구문
fi
# if ~ elif
if [ 조건식1 ]
then
구문1
elif [ 조건식2 ]
then
구문2
fi
# if ~ elif ~ else
if [ 조건식1 ]
then
구문1
elif [ 조건식2 ]
then
구문2
else
예외 구문
fi
# case
case $변수값 in
비교값1)
구문1
;;
비교값2)
구문2
;;
*)
예외 구문
;;
esac
MyBatis
<!-- if -->
<if test='조건식'>
구문
</if>
<!-- choose -->
<choose>
<when test='조건식1'>
구문1
</when>
<when test='조건식2'>
구문2
</when>
<otherwise>
예외 구문
</otherwise>
</choose>
SQL
ANSI
/*
MySQL 4.0 이상/MariaDB 5.1 이상
MSSQL 7.0 이상
Oracle 8i 이상/Tibero 3 이상
PostgreSQL 7.3 이상
*/
CASE 컬럼/값
WHEN 비교값1 THEN 반환값1
WHEN 비교값2 THEN 반환값2
ELSE 예외 반환값
END
CASE
WHEN 조건식1 THEN 반환값1
WHEN 조건식2 THEN 반환값2
ELSE 예외 반환값
END
/*
MySQL 3.23 이상/MariaDB 5.1 이상
MSSQL 7.0 이상
Oracle 8i 이상/Tibero 3 이상
PostgreSQL 7.3 이상
*/
COALESCE(컬럼/값, NULL 치환값)
COALESCE(컬럼/값, 첫 번째 컬럼/값이 NULL인 경우 반환, 두 번째 컬럼/값이 NULL인 경우 반환, ..., NULL 치환값)
/*
MySQL 3.23 이상/MariaDB 5.1 이상
MSSQL 7.0 이상
Oracle 8i 이상/Tibero 2 이상
PostgreSQL 7.3 이상
*/
NULLIF(컬럼/값, 비교값) -- 같으면 NULL 반환, 다르면 컬럼/값 반환
Non-ANSI
/*
MySQL 3.23 이상/MariaDB 5.1 이상
*/
IFNULL(컬럼/값, NULL 치환값)
/*
MSSQL 6.0 이상
*/
ISNULL(컬럼/값, NULL 치환값)
/*
MySQL 3.23 이상/MariaDB 5.1 이상
*/
IF(조건식, TRUE 치환값, FALSE 치환값)
/*
MariaDB 10.3.2 이상
MSSQL 2012 이상
*/
IIF(조건식, TRUE 치환값, FALSE 치환값)
/*
Oracle 6 이상/Tibero 1 이상
*/
DECODE(컬럼/값, 비교값, 반환값)
DECODE(컬럼/값, 비교값, 반환값, 예외 반환값)
DECODE(컬럼/값, 비교값1, 반환값1, 비교값2, 반환값2 ...)
DECODE(컬럼/값, 비교값1, 반환값1, 비교값2, 반환값2, ..., 예외 반환값)
/*
Oracle 7 이상/Tibero 3 이상
*/
NVL(컬럼/값, NULL 치환값)
/*
Oracle 8i 이상/Tibero 3 이상
*/
NVL2(컬럼/값, NOT NULL 치환값, NULL 치환값)