728x90
COALESCE 함수는 인자로 주어진 컬럼들 중에서 NULL이 아닌 첫번째 값을 반환하는 SQL 함수입니다.
이해를 돕기 위해 간단한 예를 들어보겠습니다.
CREATE TABLE Orders (
OrderID INT PRIMARY KEY,
ProductName VARCHAR(255),
Quantity INT,
DiscountedPrice DECIMAL(10,2)
);
일단 Orders 테이블을 생성합니다.
INSERT INTO Orders (OrderID, ProductName, Quantity, DiscountedPrice)
VALUES
(1, 'Apple', 10, NULL),
(2, 'Banana', 20, 18.50),
(3, 'Cherry', 30, NULL),
(4, 'Doll', 40, 12.75);
샘플 데이터는 다음과 같습니다. 할인된 가격이 NULL인 데이터도 있습니다.
여기서 COALESCE를 사용하여 할인된 가격이 제공되지 않은 경우에는 기본 가격으로 조회하고자 합니다.
기본 가격은 20으로 정합니다.
이때 SQL문은 아래와 같습니다.
SELECT
OrderID,
ProductName,
Quantity,
COALESCE(DiscountedPrice, 20.00) AS Price
FROM
Orders;
결과는 다음과 같습니다. Apple과 Doll은 할인된 가격이 없으므로 20으로 조회합니다.
OrderID | ProductName | Quantity | Price |
1 | Apple | 10 | 20.00 |
2 | Banana | 20 | 18.50 |
3 | Cherry | 30 | 20.00 |
4 | Doll | 40 | 12.75 |
728x90
'💻dev > 🖥️CS' 카테고리의 다른 글
디자인 패턴 | 전략 패턴 (Strategy Pattern) (0) | 2023.10.19 |
---|---|
CS | 최근에 기억에 남는 기술 면접 질문 - 답변 모음 (개발자 취준) (2) | 2023.09.22 |
CS | CPU 스케줄러와 스케줄링 알고리즘 (0) | 2023.08.12 |
CS | Design Pattern (디자인패턴) (0) | 2023.08.12 |
CS | Operating System (운영체제) (0) | 2023.08.12 |