-
SQL Coalesce 함수 - 대체값 반환 / null이 아닌 값 반환SQL 2024. 5. 23. 00:52반응형
SQL COALESCE 함수 정의
COALESCE 함수는 SQL에서 제공하는 표준 함수로, 인자 목록에서 첫 번째로 NULL이 아닌 값을 반환합니다. 이 함수는 주로 데이터에서 NULL 값을 처리하거나 기본값을 설정할 때 사용됩니다. 만약 모든 인자가 NULL일 경우, COALESCE 함수는 NULL을 반환합니다.
구조
COALESCE 함수의 기본 구조는 다음과 같습니다:
- 각 expression은 평가될 값이며, 이 중 첫 번째 NULL이 아닌 값이 반환됩니다.
예시
- 여러 컬럼 중 첫 번째 NULL이 아닌 값 반환:
- 결과: "first non-null". 첫 번째와 두 번째 값이 NULL이므로 세 번째 값이 반환됩니다.
- 결과: "first non-null". 첫 번째와 두 번째 값이 NULL이므로 세 번째 값이 반환됩니다.
- 사용자 이름에 기본값 제공:
- 결과: 각 사용자의 username을 반환하며, username이 NULL인 경우 'Unknown User'를 반환합니다.
- 결과: 각 사용자의 username을 반환하며, username이 NULL인 경우 'Unknown User'를 반환합니다.
- 날짜 필드에 대한 기본값 설정:
- 결과: 각 사용자의 last_login 날짜를 반환하며, last_login이 NULL인 경우 'Never logged in'을 반환합니다.
COALESCE를 지원하는 DBMS
COALESCE 함수는 ANSI SQL 표준의 일부이므로 대부분의 주요 SQL 데이터베이스 관리 시스템에서 지원됩니다. 여기에는 다음과 같은 시스템이 포함됩니다:
- Oracle
- PostgreSQL
- Microsoft SQL Server
- MySQL
- IBM DB2
- SQLite
COALESCE를 지원하지 않는 DBMS
현재까지의 정보로는 모든 주요 SQL 데이터베이스에서 COALESCE 함수를 지원하고 있습니다. 특정 DBMS에서 이 함수를 지원하지 않는 사례는 보고되지 않았습니다.
COALESCE 함수는 NULL 처리와 기본값 제공에 매우 유용하며, 데이터베이스의 불완전한 데이터를 보완하거나 누락된 정보를 처리하는 데 필수적인 도구입니다. 데이터베이스에서 이 함수를 사용하는 방법을 숙지하면, 데이터 처리 시 발생할 수 있는 여러 문제를 효율적으로 해결할 수 있습니다.
반응형'SQL' 카테고리의 다른 글
SQL concat 함수 - 문자열 병합/문자열 합치기 (0) 2024.06.02 SQL substr함수 - 문자열 중간 추출(=엑셀 mid함수) (0) 2024.05.10 SQL date_trunc 함수 날짜 절삭(주단위 짜르기, 월단위 짜르기) (0) 2024.05.07 SQL window 함수 ROW_NUMBER() 행번호 매김 (0) 2024.05.05 SQL to_char 날짜 데이터 문자열로 변환 (0) 2024.04.06