# What Is the Data Type for Date in Snowflake?

//

Angela Bailey

What Is the Data Type for Date in Snowflake?

In Snowflake, the data type for dates is DATE. The DATE data type is used to store dates in the format ‘YYYY-MM-DD’. It allows you to perform various date-related operations and calculations efficiently.

## Date Format in Snowflake

In Snowflake, dates are stored and displayed in the ‘YYYY-MM-DD’ format. This format follows the ISO 8601 standard, which ensures consistency and compatibility across different systems.

## Working with Dates in Snowflake

Snowflake provides a wide range of functions and operators to work with dates. These functions allow you to perform operations like date manipulation, date arithmetic, and extracting specific components of a date.

### Date Manipulation Functions

Snowflake offers several functions for manipulating dates. Some commonly used ones include:

• DATEADD(interval, n, date): Adds or subtracts a specified number of intervals (such as days, months, years) to/from a given date.
• DATEDIFF(interval, start_date, end_date): Calculates the difference between two dates in terms of the specified interval (days, months, years).
• LAST_DAY(date): Returns the last day of the month for a given date.

### Date Arithmetic Operators

Snowflake also supports various arithmetic operators for performing calculations with dates. These operators include:

• +: Adds an integer value representing days to a date.
• : Subtracts an integer value representing days from a date.

### Extracting Date Components

You can extract specific components of a date using Snowflake’s built-in functions. Some useful functions for extracting date components include:

• YEAR(date): Extracts the year from a given date.
• MONTH(date): Extracts the month from a given date.
• DAY(date): Extracts the day from a given date.

## Example Usage

Let’s look at some examples to understand how the DATE data type and related functions work in Snowflake:

``````-- Calculate the difference between two dates in days
SELECT DATEDIFF('day', '2022-01-01', '2022-01-31');``````

This query will return the result as 30, indicating that there are 30 days between January 1st and January 31st.

``````-- Add 7 days to a given date