EXTRACT¶
Extracts a date or time part from a DATE
or DATETIME
value.
Note
Blue also supports the SQL Server DATEPART syntax, which contains more date parts for use.
Syntax¶
EXTRACT( interval FROM date_expr )
interval ::=
YEAR
| QUARTER
| MONTH
| WEEK
| DOY
| DAY
| HOUR
| MINUTE
| SECOND
| MILLISECONDS
Arguments¶
Parameter |
Description |
---|---|
|
An interval representing a date part. See the table below or the syntax reference above for valid date parts |
|
A |
Valid date parts¶
Date part |
Definition |
---|---|
|
Year (0.0 - 9999.0) |
|
Quarter (1-4) |
|
Month (1.0-12.0) |
|
Day of the year (1.0-365.0) |
|
Day of the month (1.0-31.0) |
|
Week of the year (1.0-52.0) |
|
Hour (0.0-23.0) |
|
Minute (0.0-59.0) |
|
Seconds (0.0-59.0) |
|
Milliseconds (0.0-999.0) |
Returns¶
Returns an integer
Usage Notes¶
The
HOUR
,MINUTE
,SECOND
, andMILLISECOND
date parts work only onDATETIME
. Using them onDATE
will result in an error.
Examples¶
Consider the following table and contents:
CREATE TABLE
cool_dates(name TEXT, d DATE, dt DATETIME);
INSERT INTO
cool_dates
VALUES
('Marty McFly goes back to this time','1955-11-05','1955-11-05 01:21:00.000'),
('Marty McFly came from this time', '1985-10-26', '1985-10-26 01:22:00.000'),
('Vesuvius erupts', '79-08-24', '79-08-24 13:00:00.000'),
('1997 begins', '1997-01-01', '1997-01-01'),
('1997 ends', '1997-12-31','1997-12-31 23:59:59.999');
Break Up a DATE
Into Components¶
SELECT
EXTRACT(
YEAR
FROM
d
) AS year,
EXTRACT(
MONTH
FROM
d
) AS month,
EXTRACT(
DAY
FROM
d
) AS day
FROM
cool_dates;
Output:
year | month | day
-------+-------+-----
1955.0 | 11.0 | 5.0
1985.0 | 10.0 | 26.0
79.0 | 8.0 | 24.0
1997.0 | 1.0 | 1.0
1997.0 | 12.0 | 31.0