🧚 잠깐만요! Beekeeper Studio는 빠르고 현대적인 오픈 소스 데이터베이스 GUI예요 다운로드
2024년 2월 14일 작성자: Matthew Rathbone

뺄셈은 숫자 연산에만 쓰이는 게 아니에요! SQL Server에는 숫자와 날짜 모두의 뺄셈을 도와주는 여러 내장 함수와 연산자가 있어요. 게다가 종이와 펜으로 계산할 때와 달리 항상 NULL을 염두에 둬야 해요. 예제와 함께 바로 시작해 볼게요.

SQL Server의 뺄셈 연산 이해하기

SQL Server에서 뺄셈 연산은 보통 두 가지 상황에서 쓰여요. 숫자 데이터로 산술 연산을 할 때와 datetime 값을 다룰 때예요. SQL Server 안에서 바로 계산된 값을 만들어야 할 때 값을 빼는 기능이 꽤 유용하다는 걸 알게 될 거예요.

기본 뺄셈

개념을 쉽게 이해할 수 있도록 간단한 뺄셈 연산부터 시작해 볼게요. “TotalAmount”와 “DiscountAmount”를 포함한 “Orders”라는 테이블이 있다고 가정해 보세요.

SELECT TotalAmount, DiscountAmount, 
TotalAmount - DiscountAmount AS ActualAmount 
FROM Orders;

이 기본 예제에서는 “TotalAmount”에서 “DiscountAmount”를 빼고 그 결과를 “ActualAmount”로 출력해요.

시간 간격에 뺄셈 연산 사용하기

뺄셈은 두 datetime 사이의 차이를 계산할 때도 자주 쓰여요. SQL Server에는 smalldatetime, datetime, datetime2, datetimeoffset 등 여러 날짜/시간 타입이 있어요. 날짜 뺄셈에는 DATEDIFF() 함수를 사용할 수 있어요.

예제:

SELECT OrderID, OrderDate, 
DATEDIFF(day, OrderDate, GETDATE()) AS DaysElapsed 
FROM Orders;

이 명령은 각 주문이 접수된 날부터 오늘까지 지난 일수를 계산해서 보여줘요(GETDATE는 오늘 날짜를 반환해요).

SQL Server에서 뺄셈으로 결과 집합 집계하기

뺄셈을 이용해 결과 집합을 집계하는 것도 SQL Server에서 꽤 흔한 일이에요. 예를 들어 특정 기간의 총매출을 집계하고, 같은 기간에 제공된 총할인액을 빼야 할 수도 있어요.

예제:

SELECT 
( SELECT SUM(TotalAmount) FROM Orders where OrderDate like '2022-%' ) - 
( SELECT SUM(DiscountAmount) FROM Orders where OrderDate like '2022-%' ) as NetSales

위 명령은 총매출에서 총할인액을 빼서 2022년의 순매출을 보여줘요.

NULL 처리하기

SQL Server에서 NULL에서 값을 빼면 NULL이 반환돼요. NULL을 0과 같이 취급하고 싶다면, 결과에 예상치 못한 NULL이 나오지 않도록 이런 경우를 처리하는 것이 중요해요. 다만 항상 그래야 하는 건 아니니 상황에 맞게 판단하세요.

SELECT OrderID, 
ISNULL(TotalAmount, 0) - ISNULL(DiscountAmount, 0) AS NetAmount 
FROM Orders;

이제 여러분도 뺄셈 전문가예요

SQL Server에서 값을 효과적으로 빼는 방법은 이 밖에도 더 있으니, 이 명령들을 계속 실험해 보고 스스로 더 탐구해 보세요. 쿼리를 하나씩 작성할 때마다 SQL Server 마스터에 한 걸음 더 가까워질 거예요. 즐거운 쿼리 작성 되세요!

이 글은 SQL Server를 기준으로 작성되었어요. 따라서 모든 명령과 설명은 SQL Server에 해당해요. 다른 데이터베이스 엔진에서 이 명령들이 어떻게 동작하는지는 해당 데이터베이스의 공식 문서를 참고해 주세요.

Beekeeper Studio는 무료 오픈 소스 데이터베이스 GUI예요

지금까지 써 본 SQL 쿼리 & 에디터 도구 중 최고예요. 데이터베이스 관리에 필요한 모든 게 다 있어요. - ⭐⭐⭐⭐⭐ Mit

Beekeeper Studio는 빠르고 직관적이며 사용하기 쉬워요. 다양한 데이터베이스를 지원하고 Windows, Mac, Linux에서 모두 잘 작동해요.

Beekeeper의 Linux 버전은 100% 모든 기능을 갖추고 있어요. 대충 만든 부분도, 빠진 기능도 없어요.

Beekeeper Studio 사용자 후기

★★★★★
"Beekeeper Studio가 기존 SQL 작업 방식을 완전히 바꿔 놓았어요. 빠르고 직관적이며, 데이터베이스 작업을 다시 즐겁게 만들어 줘요."
— Alex K., 데이터베이스 개발자
★★★★★
"여러 데이터베이스 GUI를 써 봤지만, Beekeeper는 기능과 단순함 사이의 균형이 완벽해요. 그냥 잘 작동해요."
— Sarah M., 풀스택 엔지니어

SQL 작업 흐름을 개선할 준비가 되셨나요?

download 무료 다운로드