Newer Version Available
Date Functions
Functions
| Date Function | Description |
|---|---|
| date(year, month, day) | Returns a date. Specify three dimensions of a date in the
following order: year, month, day. For example:
|
| dateRange(startArray_y_m_d, endArray_y_m_d) | Returns a fixed date range. The first parameter is an array
that specifies the start date in the range. The second parameter
is an array that specifies the end of the range. For example:
|
| daysBetween(date1, date2) | Returns the number of days between two dates as an
integer. The daysBetween() function can’t take dimensions
as arguments directly. Pass toDate() and now() functions as arguments.
|
| now() | Returns current datetime in UTC (GMT). This function is valid
in a foreach statement
only.This function is commonly used in daysBetween() and toString() functions. |
| toDate(string [,formatString]) | Converts a string to a date. If a
formatString argument isn’t provided, the
function uses the format yyyy-MM-dd
HH:mm:ss.This function is often passed as an argument to daysBetween() or toString(). |
| toDate(epoch_seconds) | Converts Unix epoch seconds to a date. If epoch seconds is 0, toDate(epoch_sec) returns '1970-01-01 00:00:00'. |
| toString(date, formatString) | Converts a date to a string. This function must take a
toDate() or now() function as its
first argument.
|
Specify Fixed Date Ranges
To specify a range for fixed dates, use the dateRange() function. Specify the dates in the order: year, month, day.
Example
1a = filter a by date('year', 'month', 'day') in [dateRange([1970, 1, 1], [1970, 1, 11])];Specify Relative Date Ranges
To specify a relative date range, use the in operator on an array with relative date keywords. Here are 4 examples:
1a = filter a by date('year', 'month', 'day') in ["1 year ago".."current year"];
2a = filter a by date('year', 'month', 'day') in ["2 quarters ago".."2 quarters ahead"];
3a = filter a by date('year', 'month', 'day') in ["4 months ago".."1 year ahead"];
4a = filter a by date('year', 'month', 'day') in ["2 fiscal_years ago".."current day"];- current day
- n day(s) ago
- n day(s) ahead
- current week
- n week(s) ago
- n week(s) ahead
- current month
- n month(s) ago
- n month(s) ahead
- current quarter
- n quarter(s) ago
- n quarter(s) ahead
- current fiscal_quarter
- n fiscal_quarter(s) ago
- n fiscal_quarter(s) ahead
- current year
- n year(s) ago
- n year(s) ahead
- current fiscal_year
- n fiscal_year(s) ago
- n fiscal_year(s) ahead
| Relative Date Keyword | Start Date | End Date |
|---|---|---|
| current day | 2014/12/16 00:00:00 | 2014/12/16 23:59:59 |
| current quarter | 2014/10/1 00:00:00 | 2014/12/31 23:59:59 |
| 1 year ago | 2013/1/1 00:00:00 | 2013/12/31 23:59:59 |
| 1 month ahead | 2015/1/1 00:00:00 | 2015/1/31 23:59:59 |
| current fiscal_year | 2014/2/1 00:00:00 | 2015/1/31 23:59:59 |
| current fiscal_quarter | 2014/11/1 00:00:00 | 2015/1/31 23:59:59 |
| 2 fiscal_quarters ahead | 2015/5/1 00:00:00 | 2015/7/31 23:59:59 |
| current day - 1 year | 2013/12/16 00:00:00 | 2013/12/16 23:59:59 |
| current fiscal_year + 5 days | 2014/2/6 00:00:00 | 2014/2/6 23:59:59 |
Add and Subtract Dates
You can add and subtract dates using the relative date keywords.
Example
Here are examples of time windows for relative date keywords using addition and subtraction. In these time window examples, the current day is 2014/12/16 and FiscalMonthOffeset 1 (the fiscal year starts on February 1).
1a= filter a by date('year', 'month', 'day') in ["current day - 1 year"..] ;1a= filter a by date('year', 'month', 'day') in ["current day".."2 years ahead + 3 months"];1a= filter a by date('year', 'month', 'day') in ["current fiscal_year + 5 days".."2 years ahead + 3 months"];Use Open-Ended Relative Date Ranges
Example
1a = filter a by date('year','month','day') in [.."current month"];Example
1q = filter q by OrderDate in [“2015-01-01”..];