

 Amazon Redshift は、パッチ 198 以降、新しい Python UDF の作成をサポートしなくなります。既存の Python UDF は、2026 年 6 月 30 日まで引き続き機能します。詳細については、[ブログ記事](https://aws.amazon.com/blogs/big-data/amazon-redshift-python-user-defined-functions-will-reach-end-of-support-after-june-30-2026/)を参照してください。

# MONTHS\_BETWEEN 関数
<a name="r_MONTHS_BETWEEN_function"></a>

MONTHS\_BETWEEN は、2 つの日付の間の月数を算出します。

1 番目の日付が 2 番目の日付より値の場合、結果は正になります。それ以外の場合、結果は負になります。

どちらかの引数が null の場合、結果は NULL になります。

## 構文
<a name="r_MONTHS_BETWEEN_function-synopsis"></a>

```
MONTHS_BETWEEN( date1, date2 )
```

## 引数
<a name="r_MONTHS_BETWEEN_function-arguments"></a>

 *date1*   
データ型 `DATE` の列または `DATE` 型に暗黙的に評価される式。

 *date2*   
データ型 `DATE` の列または `DATE` 型に暗黙的に評価される式。

## 戻り型
<a name="r_MONTHS_BETWEEN_function-return-type"></a>

FLOAT8

結果の整数部分は、日付の年の値と月の値の差分に基づいて決まります。結果の小数部分は、日付の曜日およびタイムスタンプの値から計算され、1 か月が 31 日であると想定しています。

*date1* と *date2* のどちらにも月の同じ日付が含まれているか (1/15/14 と 2/15/14 など)、月の末日が含まれている場合 (8/31/14 と 9/30/14 など)、タイムスタンプ部分 (存在する場合) が一致するかどうかに関係なく、結果は日付の年と月の値に基づく整数となります。

## 例
<a name="r_MONTHS_BETWEEN_function-examples"></a>

次の例では、1969 年 1 月 18 日から 1969 年 3 月 18 日までの月数を返します。

```
select months_between('1969-01-18', '1969-03-18')
as months;

months
----------
-2
```

次の例では、1969 年 1 月 18 日から 1969 年 1 月 18 日までの月数を返します。

```
select months_between('1969-01-18', '1969-01-18')
as months;

months
----------
0
```

 次の例では、イベントの最初の開催から最後の開催までの月数を返します。

```
select eventname, 
min(starttime) as first_show,
max(starttime) as last_show,
months_between(max(starttime),min(starttime)) as month_diff
from event 
group by eventname
order by eventname
limit 5;

eventname         first_show             last_show              month_diff
---------------------------------------------------------------------------
.38 Special       2008-01-21 19:30:00.0  2008-12-25 15:00:00.0  11.12
3 Doors Down      2008-01-03 15:00:00.0  2008-12-01 19:30:00.0  10.94
70s Soul Jam      2008-01-16 19:30:00.0  2008-12-07 14:00:00.0  10.7
A Bronx Tale      2008-01-21 19:00:00.0  2008-12-15 15:00:00.0  10.8
A Catered Affair  2008-01-08 19:30:00.0  2008-12-19 19:00:00.0  11.35
```