# MONTHS\_BETWEEN

The `MONTHS_BETWEEN()` function subtracts to find the number of months between two dates.

## Syntax

```
MONTHS_BETWEEN(date1, date2)

```

## Arguments

* `date1`, `date2`: A valid date, datetime, or parsable date string. Only the date part is used.

## Return Type

Integer. If `date1` or `date2` is not a valid date, returns `NULL`.

## Examples

```sql
SELECT MONTHS_BETWEEN(DATE('2017-03-01'), DATE('2017-01-01')); 

```

```output

+--------------------------------------------------------+
| MONTHS_BETWEEN(DATE('2017-03-01'), DATE('2017-01-01')) |
+--------------------------------------------------------+
|                                                      2 |
+--------------------------------------------------------+

```

If date1 is in the past, the function returns a negative result.

```sql
SELECT MONTHS_BETWEEN(DATE('2017-01-01'), DATE('2017-03-01'));

```

```output

+--------------------------------------------------------+
| MONTHS_BETWEEN(DATE('2017-01-01'), DATE('2017-03-01')) |
+--------------------------------------------------------+
|                                                     -2 |
+--------------------------------------------------------+

```

`NOW()` can be used as one of the parameters.

```sql
SELECT MONTHS_BETWEEN('2017-10-31',NOW());

```

```output

+------------------------------------+
| MONTHS_BETWEEN('2017-10-31',now()) |
+------------------------------------+
|                  2.741935483870968 |
+------------------------------------+

```

**Related Topics**

* [MONTH](https://docs.singlestore.com/db/v9.1/reference/sql-reference/date-and-time-functions/month.md)

***

Modified at: June 26, 2026

Source: [/db/v9.1/reference/sql-reference/date-and-time-functions/months-between/](https://docs.singlestore.com/db/v9.1/reference/sql-reference/date-and-time-functions/months-between/)

(An index of the documentation is available at /llms.txt)
