SQL DATE Data Type
A calendar date only — year, month, day. No time of day, no timezone.
What & Why
DATE stores a calendar date: year, month, day. Nothing about the time of day is stored at all — 2024-01-15 is a complete, valid DATE value on its own.
See How It Works
| id | name | channel | spend | start_date | end_date | status | target_segment |
|---|---|---|---|---|---|---|---|
| 1 | Spring Launch | google_ads | 55000.00 | 2024-01-15 | 2024-03-31 | active | smb |
| 2 | Retention Webinar | 45000.00 | 2024-02-10 | 2024-04-15 | active | enterprise | |
| 3 | Finance Retargeting | 50000.00 | 2024-03-12 | 2024-05-31 | active | enterprise | |
| 4 | Enterprise Search | google_ads | 60000.00 | 2024-04-01 | 2024-06-30 | active | enterprise |
EXAMPLE QUERY
SELECT name, start_date FROM marketing.campaigns
WHERE start_date > '2024-02-01';RESULT — campaigns after February 1, 2024
| name | start_date |
|---|---|
| Retention Webinar | 2024-02-10 |
| Finance Retargeting | 2024-03-12 |
| Enterprise Search | 2024-04-01 |
DATE values compare chronologically, so all three campaigns that start after 2024-02-01 are returned in date order.
Now You Try
Practice this concept
Marketing wants campaigns that started after February 1, 2024, ordered by their start date.
Available schema
marketingPrefix tables with marketing.table_name.
namestart_datemarketing.campaigns| Column | Type |
|---|---|
| id | integer |
| name | text |
| channel | text |
| spend | numeric |
| start_date | date |
| end_date | date |
| status | text |
| target_segment | text |
| legacy_id | text |
query.sql
Sign up free to try it on a real business scenario