[sql] 특정 시간 단위의 날짜 더하기 및 빼기 함수

일반적으로 SQL에서는 날짜와 시간을 처리하기 위한 다양한 함수를 제공합니다. 특히, 특정 시간 단위의 날짜를 더하거나 빼는 작업은 자주 사용되며, 이를 위한 다양한 함수가 제공됩니다. 이 글에서는 가장 일반적으로 사용되는 시간 단위(datepart)를 더하거나 빼는 함수에 대해 알아보겠습니다.

DATEADD 함수

DATEADD 함수는 특정 시간 단위를 기준으로 날짜를 더하거나 빼는 데 사용됩니다. 사용 방법은 아래와 같습니다.

DATEADD(datepart, number, date)

여기서 datepart는 더하거나 빼고자 하는 시간 단위를 지정하고, number는 더하거나 빼고자 하는 수량을 지정합니다. date는 더하거나 빼고자 하는 대상 날짜입니다.

예를 들어, ‘2021-01-01’에 3일을 더하려면 다음과 같이 쿼리를 작성할 수 있습니다.

SELECT DATEADD(day, 3, '2021-01-01') AS AddedDate

위 쿼리를 실행하면 ‘2021-01-04’가 반환됩니다.

DATEDIFF 함수

DATEDIFF 함수는 두 날짜 간의 시간 간격을 구하는 데 사용됩니다. 사용 방법은 아래와 같습니다.

DATEDIFF(datepart, startdate, enddate)

여기서 datepart는 시간 단위를 지정하고, startdateenddate는 간격을 구하고자 하는 두 날짜입니다.

예를 들어, ‘2021-01-01’부터 ‘2021-01-15’까지의 일수를 구하려면 다음과 같이 쿼리를 작성할 수 있습니다.

SELECT DATEDIFF(day, '2021-01-01', '2021-01-15') AS DayDifference

위 쿼리를 실행하면 14가 반환됩니다.

SQL에서는 DATEADDDATEDIFF 함수를 사용하여 특정 시간 단위의 날짜를 더하거나 빼는 작업을 쉽게 수행할 수 있습니다. 원하는 시간 단위로 날짜를 조작하고 시간 간격을 구할 때 이러한 함수를 유용하게 활용할 수 있습니다.

참고 자료