본문 바로가기
MySQL

[MySQL] coalesce 함수 사용방법

by Rapil 2023. 7. 26.

coalesce 함수는 MySQL에서 NULL 값을 다른 값으로 대체할 때 사용하는 함수입니다.

모든 인자가 NULL일 경우에는 NULL을 반환합니다.


Point

coalesce 사용방법


 

coalesce 사용방법

 

열에서 null인 값 조회하기

// [테이블 명]의 [컬럼 명]을 조회하고 null이 아닌 값이 있으면 해당 값을 [반환 컬럼 명]으로 반환
$ SELECT COALESCE([컬럼 명], [컬럼 명이 NULL인 경우 대체할 값]) 
$ AS [반환 컬럼 명] FROM [테이블 명];

// 예
$ SELECT COALESCE(address, "No address") AS no FROM prac;

 

 

 

null 값 컬럼과 다른 컬럼 포함 조회

// null값이 있는 컬럼의 id나 name의 컬럼도 같이 조회하는 방법
$ SELECT [같이 반환 할 컬럼 명], COALESCE([null이 있는 컬럼 명], [null 대신 반환 할 값])
$ AS [null이 있는 컬럼 명] FROM [테이블 명];

// 예
$ SELECT name, COALESCE(address, 'No address') AS address FROM prac;

 

 

 

null값인 데이터 수정하기

// null값인 데이터 찾아서 수정하기
$ UPDATE [테이블 명] SET [변경 할 컬럼 명] = COALESCE([변경 할 컬럼 명], [변경 값]);

// 예
$ UPDATE prac SET address = COALESCE(address, 'No address');

 

 

 

// 추가로 WHERE절을 추가하면 address에 null인 경우에만 No address로 수정하는 방법입니다.
// 전체 테이블 수정이 아닌 특정 조건을 이용하여 수정하여 오류가 발생할 확률이 더 적습니다.
$ UPDATE prac SET address = COALESCE(address, 'No address')
$ WHERE address IS NULL;

 


coalesce 를 사용하는 방법을 알아봤습니다.

MySQL을 사용하여 데이터베이스를 조금씩 알아보도록 해요!
파이팅입니다!

 


참고 URL

 

https://wakestand.tistory.com/485

 

MySQL COALESCE 함수 사용방법

MySQL에서 COALESCE는 다음과 같이 사용하는데 SELECT COALESCE('값', '값', '값'); 이런 식으로 쓰면 입력한 값 중에서 NULL이 아니고 먼저 입력한 값을 우선해 출력해주게 되는데 COALESCE(NULL, 'A', 'B'); 위와

wakestand.tistory.com