EXTRACT
Extracts a date or time part from a DATE or DATETIME value.
Note
SQream DB also supports the SQL Server DATEPART syntax, which contains more date parts for use.
Syntax
EXTRACT( interval FROM date_expr ) --> DOUBLE
interval ::=
     YEAR
   | 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) | 
| 
 | 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
- A floating point representing the date part value 
Notes
- The - HOUR,- MINUTE,- SECOND, and- MILLISECONDdate parts work only on- DATETIME. Using them on- DATEwill result in an error.
Examples
For these examples, consider the following table and contents:
CREATE TABLE cool_dates(name TEXT(40), 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
master=> SELECT EXTRACT(YEAR FROM d) AS year, EXTRACT(MONTH FROM d) AS month, EXTRACT(DAY FROM d) AS day
.               FROM cool_dates;
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