DateCompare |
|
 |
Description
|
Performs a full date/time comparison of two dates.
|
|
Returns
- -1, if date1 is less than date2
- 0, if date1 is equal to date2
- 1, if date1 is greater than date2
|
|
Category
|
Date and time functions
|
|
Function syntax |
DateCompare("date1", "date2" [, "datePart"])
|
|
See also
|
CreateDateTime, DatePart
|
|
Parameters
|
|
Parameter |
Description |
date1 |
Date/time object, in the range 100 AD-9999 AD. |
date2 |
Date/time object, in the range 100 AD-9999 AD. |
datePart |
Optional. String. Precision of the comparison. |
|
s Precise to the second (default) |
|
n Precise to the minute |
|
h Precise to the hour |
|
d Precise to the day |
|
m Precise to the month |
|
yyyy Precise to the year |
|
|
Usage
|
When passing a date/time object as a string, you must enclose it in quotation marks. Otherwise, it is interpreted as a numeric representation of a date/time object.
|
|
Example<h3>DateCompare Example</h3>
<p>The DateCompare function compares two date/time values.
<cfif IsDefined("FORM.date1")>
<cfif IsDate(FORM.date1) and IsDate(FORM.date2)>
<cfset comparison = DateCompare(FORM.date1, FORM.date2, FORM.precision)>
<!--- switch on the variable to give various responses --->
<cfswitch expression = #comparison#>
<cfcase value = "-1">
<h3><cfoutput>#DateFormat(FORM.date1)#
#TimeFormat(FORM.date1)#</cfoutput> (Date 1) is
earlier than <cfoutput>#DateFormat(FORM.date2)#
#TimeFormat(FORM.date2)#</cfoutput> (Date 2)</h3>
<I>The dates are not equal</I>
</cfcase>
<cfcase value = "0">
<h3><cfoutput>#DateFormat(FORM.date1)#
#TimeFormat(FORM.date1)#</cfoutput> (Date 1) is equal
to <cfoutput>#DateFormat(FORM.date2)#
#TimeFormat(FORM.date2)#</cfoutput> (Date 2)</h3>
<I>The dates are equal!</I>
</cfcase>
<cfcase value = "1">
<h3><cfoutput>#DateFormat(FORM.date1)#
#TimeFormat(FORM.date1)#</cfoutput> (Date 1) is later
than <cfoutput>#DateFormat(FORM.date2)#
#TimeFormat(FORM.date2)#</cfoutput> (Date 2)</h3>
<I>The dates are not equal</I>
</cfcase>
<CFDEFAULTCASE>
<h3>This is the default case</h3>
</CFDEFAULTCASE>
</cfswitch>
<cfelse>
<h3>Enter two valid date values</h3>
</cfif>
</cfif>
<form action = "datecompare.cfm">
<hr size = "2" color = "#0000A0">
<p>Date 1
<br><input type = "Text" name = "date1"
value = "<cfoutput>#DateFormat(Now())# #TimeFormat(Now())#
</cfoutput>">
<p>Date 2
<br><input type = "Text" name = "date2"
value = "<cfoutput>#DateFormat(Now())# #TimeFormat(Now())#
</cfoutput>">
<p>Specify precision to the:
<br><select name = "precision">
<option value = "s">
Second
</option>
<option value = "n">
Minute
</option>
<option value = "h">
Hour
</option>
<option value = "d">
Day
</option>
<option value = "m">
Month
</option>
<option value = "yyyy">
Year
</option>
</select>
<p><input type = "Submit" value = "Compare these dates" name = "">
<input type = "reset">
</form>
|