Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
dev:sql:functions:calc_date [2009/12/18 15:23]
tdo
dev:sql:functions:calc_date [2016/06/28 22:38] (current)
Line 1: Line 1:
 {{page>:​top_add&​nofooter&​noeditbtn}} {{page>:​top_add&​nofooter&​noeditbtn}}
-<​html><​div align="​center"><​span style="​color:​red">​DRAFT</​span></​div></​html>​ +====== ​Development: ​Omnidex SQL ======
-====== Omnidex SQL Function: $CALC_DATE ​====== +
-{{page>:​sql_bar&​nofooter&​noeditbtn}}+
  
-===== Description ​=====+===== SQL Functions: $CALC_DATE ======
  
-$CALC_DATE ​calculates ​new date from specified ​date or column_date using a numeric positive or negative offset.  The offset defaults to days but can be changed by using the date_unit optional argument. +==== Description ==== 
-===== Syntax =====+The $CALC_DATE ​function performs arithmetic on a date expression, returning ​new date value.  The arithmetic is performed ​using the units declared in the function, or using DAYS if not specified.
  
-Result = $calc_date( <​date_column | '​date_string'​ >, offset_expression [, date_unit [, options])+This function returns the same datatype as the passed date expression.
  
-Returns a floating point value.+==== Syntax ====
  
-===== Discussion ===== +  $CALC_DATE( date_expression,​ numeric_expression [ , date_token ] )
-== <​date_column_spec | '​date_string'​ > == +
-An expression resulting in date-class or string-class datatype.+
  
-  +== date_expression ​==
-== offset_expression ​== +
-An expression resulting in a numeric-class (integer or floating point) value.  ​+
  
-Negative values supported. +Required. Any expression that returns a date-class datatype. Examples of date expressions are columns or functions that return a date-class datatype. ​ The date-class datatypes are any of the date or time oriented datatypes found in the list of [[dev:​appendix:​reference:​datatypes|Omnidex datatypes]]
-== date_unit ==+
  
-A string containing unit abbreviation that tell the $calc_date function to add or subtract the number of date_units.+== numeric_expression ==
  
-Valid datefield Options: +Required. Any expression that returns a numeric-class datatype. Examples ​of numeric expressions are columnsfunctions or expressions that return ​numeric-class datatype. ​ The numeric datatypes are found in the list of [[dev:​appendix:​reference:​datatypes|Omnidex datatypes]]. ​
-^ Date_field ^ Description ^ +
-| YEAR | Year | +
-| MONTH | Month | +
-| DAY | Day | +
-| HOUR | Hour | +
-| MINUTE | Minute | +
-| SECOND | Second | +
-| W | Day of the week number (1-Sunday, 2-Monday) |  +
-| WW | Three-character day-of-week abbreviation (SunMon) | +
-| WWW | Fully spelled day-of-week (Sunday, Monday) |  +
-| M | Non-zero-filled month number (1-January, 2-February) |  +
-| 0M | Zero-filled day-of-month number (01-January,​ 02-February) |  +
-| MM | Three-character month abbreviation (Jan, Feb) | +
-| MMM | Fully spelled month (January, February) | +
-| D | Non-zero-filled day-of-month (1, 2, 3) | +
-| 0D | Zero-filled day-of-month (01, 02, 03) | +
-| J | Non-zero-filled Julian date (1, 2) | +
-| 0J | Zero-filled Julian date (01, 02) | +
-| YY | Two-digit year (99, 00) | +
-| YYYY | Four-digit year (1999, 2000) |  +
-| H | 12-hour, non-zero-filled hour of day (12, 1) | +
-| 0H | 12-hour, zero-filled hour of day (12, 01) | +
-| HH | 24-hour, non-zero-filled hour of day (24, 1) |  +
-| 0HH | 24-hour, zero-filled hour of day (24, 01) | +
-| N | Non-zero-filled minute of hour (1, 2) | +
-| 0N | Zero-filled minute of hour (01, 02) | +
-| S | Non-zero-filled second of minute (1, 2) |  +
-| 0S | Zero-filled second of minute (01, 02) | +
-| F | Non-zero-filled fraction of second (1, 2) |  +
-| 0F | Zero-filled fraction ​of a second (01, 02) | +
-| A | Lowercase am/pm indicator | +
-| AA | Uppercase AM/PM indicator ​|+
  
 +If this function is to return a date in the future, the numeric expression should return a positive value. ​ If this function is to return a date in the past, the numeric expression should return a negative value.
 +
 +== date_token ==
 +
 +Optional. One of the following tokens representing the unit for the date arithmetic.
 +
 +{{page>​dev:​appendix:​reference:​date_tokens_insert&​noheader&​nofooter&​noeditbtn}}
 +
 +
 +== date_column ==
 +
 +Required. A column that is declared as a date_class datatype. ​ The date_class datatypes are any of the date or time oriented datatypes found in the list of [[dev:​appendix:​reference:​datatypes|Omnidex datatypes]]. ​
 +
 +
 +==== Example ====
 +=== Example 1: $CALC_DATE adding 18 years ===
  
-== Options == 
-There are no options currently for this function. 
-  
-===== Example ===== 
-==== Example 1 ==== 
 <​code>​ <​code>​
-> select $calc_date('​20090101', -5) from $omnidex+> select ​birthdate, ​$calc_date(birthdate, 18, 'YY'​) ​bday_plus_18 ​from individuals;​
  
-$CALC_DATE('​20090101',​ +BIRTHDATE ​    ​BDAY_PLUS_18 
----------------------- +------------  ​------------ 
-            2008-12-27+  ​1938-07-14 ​   1956-07-14 
 +  1957-11-22 ​   1975-11-22 
 +  1960-07-28 ​   1978-07-28 
 +  1929-08-22 ​   1947-08-22 
 +  1933-07-09 ​   1951-07-09 
 +  1944-08-01 ​   1962-08-01 
 +  2004-09-14 ​   2022-09-14
 </​code>​ </​code>​
-==== Example 2 ==== 
-<​code>​ 
-> select $calc_date('​20090101',​ -5,YEAR) from $omnidex 
  
-$CALC_DATE('​20090101',​ +====== Additional Resources ====== 
----------------------- + 
-            ​2004-01-01+See also: 
 +{{page>​dev:​sql:​functions:​see_also_dates&​noheader&​nofooter&​noeditbtn}}
  
-</​code>​ 
 {{page>:​bottom_add&​nofooter&​noeditbtn}} {{page>:​bottom_add&​nofooter&​noeditbtn}}
 +
 
Back to top
dev/sql/functions/calc_date.1261149797.txt.gz · Last modified: 2016/06/28 22:38 (external edit)