Extracting Date and Time Information
Go Up to DATE, TIME, and TIMESTAMP Data Types
The EXTRACT()
function extracts date and time information from databases. In dialect 3, the EXTRACT
operator allows you to return different parts of a TIMESTAMP
value. The EXTRACT
operator makes no distinction between dialects when formatting or returning the information. EXTRACT()
has the following syntax:
- EXTRACT (<part> FROM <value>)
The value passed to the EXTRACT()
expression must be DATE
, TIME
, or TIMESTAMP
. Extracting a part that doesn’t exist in a data type results in an error. For example:
EXTRACT (TIME FROM aTime)
A statement such as EXTRACT (YEAR from aTime)
would fail.
The data type of EXTRACT()
expressions depends on the specific part being extracted:
Extract | Resulting data type |
Representing |
---|---|---|
|
|
Year, range 0-5400 |
|
|
Month, range 1-12 |
|
|
Day, range 1-31 |
|
|
Hour, range 1-23 |
|
|
Minute, range 1-59 |
|
|
Second, range 0-59.9999 |
|
|
Day of the week, range 0-6 |
|
|
Day of the year, range 1-366 |
SELECT EXTRACT (YEAR FROM timestamp_fld) FROM table_name; ======= 1999 SELECT EXTRACT (YEAR FROM timestamp_fld) FROM table_name; ======= 1999 SELECT EXTRACT (MONTH FROM timestamp_fld) FROM table_name; ======= 6 SELECT EXTRACT (DAY FROM timestamp_fld) FROM table_name; ======= 25 SELECT EXTRACT (MINUTE FROM timestamp_fld) FROM table_name; ======= 24 SELECT EXTRACT (SECOND FROM timestamp_fld) FROM table_name; ============ 35.0000 SELECT EXTRACT (WEEKDAY FROM timestamp_fld) FROM table_name; ======= 5 SELECT EXTRACT (YEARDAY FROM timestamp_fld) FROM table_name; ======= 175 SELECT EXTRACT (MONTH FROM timestamp_fld) || '-' || EXTRACT (DAY FROM timestamp_fld) || '-' || EXTRACT (YEAR FROM timestamp_fld) FROM table_name; ==================== 6-25-1999