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

+ Recent posts