Click here to view and discuss this page in DocCommentXchange. In the future, you will be sent there automatically.

SQL Anywhere 10.0.1 » SQL Anywhere Server - SQL Reference » SQL Functions » Alphabetical list of functions

MONTHNAME function [Date and time] Next Page

MONTHS function [Date and time]

The behavior of this function can vary depending on what you supply:

Syntax 1: integer

MONTHS( [ datetime-expression, ] datetime-expression )

Syntax 2: timestamp

MONTHS( datetime-expression, integer-expression )


datetime-expression    A date and time.

integer-expression    The number of months to be added to the datetime-expression. If integer-expression is negative, the appropriate number of months is subtracted from the datetime value. If you supply an integer-expression, the datetime-expression must be explicitly cast as a datetime data type.

For information about casting data types, see CAST function [Data type conversion].


The value of MONTHS is calculated from the number of first days of the month between the two dates.

Standards and compatibility

The following statements return the value 2, signifying that the second date is two months after the first. It is recommended that you use the second example (DATEDIFF).

SELECT MONTHS( '1999-07-13 06:07:12',
   '1999-09-13 10:07:12' );

   '1999-07-13 06:07:12',
   '1999-09-13 10:07:12' );

The following statement returns the value 23981.

SELECT MONTHS( '1998-07-13 06:07:12' );

The following statements return the timestamp 1999-10-12 21:05:07.000. It is recommended that you use the second example (DATEADD).

SELECT MONTHS( CAST( '1999-05-12 21:05:07'

SELECT DATEADD( month, 5, '1999-05-12 21:05:07' );