1. NVL 함수
NVL 함수는 Oracle 데이터베이스에서 사용되는 함수로, 첫 번째 인자가 NULL일 경우 두 번째 인자를 반환합니다.
이 함수는 NULL 값을 다른 값으로 대체할 때 유용합니다.
SELECT NVL(column1, 0) FROM table1;
위의 쿼리문에서는 column1이 NULL일 경우 0을 반환합니다.
2. NVL2 함수
NVL2 함수는 NVL 함수와 유사하지만, 세 개의 인자를 받습니다.
첫 번째 인자가 NULL이 아닌 경우 두 번째 인자를 반환하고, NULL인 경우 세 번째 인자를 반환합니다.
SELECT NVL2(column1, 'A', 'B') FROM table1;
위의 쿼리문에서는 column1이 NULL이 아닐 경우 'A'를, NULL일 경우 'B'를 반환합니다.
3. ISNULL 함수
ISNULL 함수는 SQL Server 데이터베이스에서 사용되는 함수로, 첫 번째 인자가 NULL일 경우 두 번째 인자를 반환합니다.
NVL 함수와 유사한 기능을 하지만, 인자의 개수가 다릅니다.
SELECT ISNULL(column1, 0) FROM table1;
위의 쿼리문에서는 column1이 NULL일 경우 0을 반환합니다.
4. NULLIF 함수
NULLIF 함수는 두 개의 인자를 받습니다.
첫 번째 인자와 두 번째 인자가 같을 경우 NULL을 반환하고, 다를 경우 첫 번째 인자를 반환합니다.
SELECT NULLIF(column1, 0) FROM table1;
위의 쿼리문에서는 column1이 0일 경우 NULL을 반환하고, 0이 아닐 경우 column1을 반환합니다.
5. COALESCE 함수
COALESCE 함수는 Oracle, SQL Server, MySQL 등 다양한 데이터베이스에서 사용되는 함수로, 여러 개의 인자를 받습니다.
인자들 중에서 NULL이 아닌 첫 번째 값을 반환합니다. 만약 모든 인자가 NULL인 경우 NULL을 반환합니다.
SELECT COALESCE(column1, column2, column3, 0) FROM table1;
위의 쿼리문에서는 column1, column2, column3 중에서 NULL이 아닌 값이 있을 경우 해당 값을 반환하고,
모두 NULL인 경우 0을 반환합니다.
<차이점>
NVL 함수와 NVL2 함수는 Oracle 데이터베이스에서 사용됩니다.
ISNULL 함수는 SQL Server 데이터베이스에서 사용됩니다.
NULLIF 함수는 두 개의 인자를 받으며, 두 인자가 같을 경우 NULL을 반환합니다.
COALESCE 함수는 여러 개의 인자를 받아 NULL이 아닌 첫 번째 값을 반환하며, 모든 인자가 NULL인 경우 NULL을 반환합니다.
'CS' 카테고리의 다른 글
Javascript Design Pattern Summary (0) | 2023.04.13 |
---|---|
React, Vue, Angular 의 차이 (0) | 2023.04.04 |
SEO 란? (0) | 2023.03.29 |
SSR vs CSR vs SSG (페이지 렌더링 방식) (1) | 2023.03.29 |