[Overview][Constants][Procedures and functions][Index] Reference for unit 'DateUtils' (#rtl)

# CompareDate

Compare 2 dates, disregarding the time of day

## Declaration

Source position: dateutil.inc line 375

 function CompareDate( const A: TDateTime; const B: TDateTime

## Arguments

 A First date to compare B Second date to compare

## Function result

A negative number if date A is before B, zero if they are equal, or positive if A is after B.

## Description

CompareDate compares the date parts of two timestamps A and B and returns the following results:

< 0
if the day part of A is earlier than the day part of B.
0
if A and B are the on same day (times may differ) .
> 0
if the day part of A is later than the day part of B.

## See also

 CompareTime Compares two times of the day, disregarding the date part. CompareDateTime Compare 2 dates, taking into account the time of day SameDate Check whether two TDateTime values have the same date part. SameTime Check whether two TDateTime values have the same time part. SameDateTime Check whether two TDateTime values have the same date and time parts.

## Example

```Program Example99;

{ This program demonstrates the CompareDate function }

Uses SysUtils,DateUtils;

Const
Fmt = 'dddd dd mmmm yyyy';

Procedure Test(D1,D2 : TDateTime);

Var
Cmp : Integer;

begin
Write(FormatDateTime(Fmt,D1),' is ');
Cmp:=CompareDate(D1,D2);
If Cmp<0 then
write('earlier than ')
else if Cmp>0 then
Write('later than ')
else
Write('equal to ');
Writeln(FormatDateTime(Fmt,D2));
end;

Var
D,N : TDateTime;

Begin
D:=Today;
N:=Now;
Test(D,D);
Test(N,N);
Test(D+1,D);
Test(D-1,D);
Test(D+OneSecond,D);
Test(D-OneSecond,D);
Test(N+OneSecond,N);
Test(N-OneSecond,N);
End.
```