Date Functions
Table 1 lists the date functions supported in DLI.
| Function | Return Type | Description |
|---|---|---|
| from_unixtime(bigint unixtime[, string format]) | STRING | Convert a timestamp to the time format "yyyy-MM-dd HH:mm:ss" or "yyyyMMddHHmmss.uuuuuu". |
| unix_timestamp() | BIGINT | Return a Unix timestamp (the number of seconds that have elapsed since 1970-01-01 00:00:00) represented by an unsigned integer when the function is called without arguments. |
| unix_timestamp(string date) | BIGINT | Return the number of seconds between a specified date and 1970-01-01 00:00:00. |
| unix_timestamp(string date, string pattern) | BIGINT | Convert a time string with a given pattern to a Unix timestamp. Example: unix_timestamp("2009-03-20", "yyyy-MM-dd") = 1237532400. |
| to_date(string timestamp) | STRING | Return the date part of a time string. Example: to_date("1970-01-01 00:00:00") = "1970-01-01". |
| year(string date) | INT | Return the year part of a date. |
| quarter(string date/timestamp/string) | INT | Return the quarter of the year for a date, timestamp, or string. Example: quarter('2015-04-01')=2. |
| month(string date) | INT | Return the month (from 1 to 12) part of a date. |
| day(string date) dayofmonth(string date) | INT | Return the day part of a date. |
| hour(string date) | INT | Return the hour (from 0 to 23) part of a date. |
| minute(string date) | INT | Return the minute (from 0 to 59) part of a date. |
| second(string date) | INT | Return the second (from 0 to 59) part of a date. |
| weekofyear(string date) | INT | Return the week number (from 0 to 53) of a date. |
| datediff(string enddate, string startdate) | INT | Return the number of days from startdate to enddate. |
| date_add(string startdate, int days) | STRING | Add a number of days to a date. |
| date_sub(string startdate, int days) | STRING | Subtract a number of days from a date. |
| from_utc_timestamp(string timestamp, string timezone) | TIMESTAMP | Convert a UTC timestamp to a timestamp in a given time zone. For example, from_utc_timestamp('1970-01-01 08:00:00','PST') returns 1970-01-01 00:00:00. |
| to_utc_timestamp(string timestamp, string timezone) | TIMESTAMP | Convert a timestamp in a given time zone to a UTC timestamp. For example, to_utc_timestamp('1970-01-01 00:00:00','PST') returns 1970-01-01 08:00:00. |
| current_date() | DATE | Return the current date, for example, 2016-07-04. |
| current_timestamp() | TIMESTAMP | Return the current time, for example, 2016-07-04 11:18:11.685. |
| add_months(string start_date, int num_months) | STRING | Return the date that is num_months after start_date. |
| last_day(string date) | STRING | Return the last day of the month to which a date belongs. The returned date is in the format of yyyy-MM-dd, for example, 2015-08-31. |
| next_day(string start_date, string day_of_week) | STRING | Return the first date that is later than start_date and nearest to day_of_week. The returned date in the format of yyyy-MM-dd. day_of_week specifies a day of a week. For example, the value of day_of_week can be Monday or FRIDAY. |
| trunc(string date, string format) | STRING | Reset the date in a specified format. Supported formats are MONTH/MON/MM and YEAR/YYYY/YY. Example: trunc('2015-03-17', 'MM') = 2015-03-01. |
| months_between(string date1, string date2) | DOUBLE | Return number of months between dates date1 and date2. |
| date_format(date/timestamp/string ts, string fmt) | STRING | Return the formatted value of date/timestamp/string. The Java SimpleDateFormat format is supported. Example: date_format('2015-04-08', 'y') = '2015'. |
Last Article: Mathematical Functions
Next Article: String Functions
Did this article solve your problem?
Thank you for your score!Your feedback would help us improve the website.