このセクションでは、PostgreSQL MAKE_INTERVAL() 関数の使用方法を学習します。 PostgreSQLのmake_interval()関数は、引数を入力として受け取り、間隔を作成するために使用されます。この関数を使用すると、年、月、日、時間、分、秒で間隔を指定でき、それに応じて間隔が構築されます。。

 
PostgreSQL
make_interval() 関数の構文:

MAKE_INTERVAL(time interval => value, time interval => value,..)

パラメータ:

  • years:間隔内の年数。
  • months:間隔内の月数。
  • weeks:間隔内の週数。
  • days:間隔内の日数。
  • hours: 間隔内の時間数。
  • mins:間隔の分数。
  • seconds:間隔の秒数。

注記: すべてのパラメータはオプションであり、指定されていない場合はそれぞれのデフォルト値は 0 になります。

間隔の作成  MAKE_INTERVAL() 関数:

PostgreSQL の MAKE_INTERVAL() 関数を使用して、現在までの 1 年 6 か月の間隔を作成します。

以下の例では、「「年」と「月」日付に 1 年 6 か月を追加するには、時間間隔引数として を、単位引数として 1 と 6 を指定します。

SELECT '2024-02-24'::date + make_interval(years=>1,months=>6) as new_date

出力:

PostgreSQL MAKE_INTERVAL() 関数

2日、4時間、30分の間隔を作成します。

以下の例では、「「日」、「時間」、「分」日付に 1 年 6 か月を追加するには、時間間隔引数として を、単位引数として 1 と 6 を指定します。

SELECT '2024-02-24'::date + make_interval(days=>2,hours=>4,mins=>30) as new_date

出力:

PostgreSQL MAKE_INTERVAL() 関数 1

PostgreSQL MAKE_INTERVAL() 関数の例

以下は、PostgreSQL の MAKE_INTERVAL() 関数の例の一部です。

  • PostgreSQL の MAKE_INTERVAL() 関数を使用して、日付に年を追加します。

以下の例では、「年”日付に 4 年を追加するには、時間間隔引数として 1、単位引数として 4 を指定します。

SELECT '2024-02-24'::date + make_interval(years=>4) as new_date

出力:

PostgreSQL MAKE_INTERVAL() 関数 2
  • PostgreSQL の MAKE_INTERVAL() 関数を使用して日付に月を追加します。

以下の例では、「ヶ月”日付に 2 か月を追加するには、時間間隔引数として 1 を指定し、単位引数として 2 を指定します。

SELECT '2024-02-24'::date + make_interval(months=>2) as new_date

出力:

PostgreSQL MAKE_INTERVAL() 関数 4
  • PostgreSQL の MAKE_INTERVAL() 関数を使用して日付に週を追加します。

以下の例では、「週間”日付に 2 週間を追加するには、時間間隔引数として 1 を指定し、単位引数として 2 を指定します。

SELECT '2024-02-24'::date + make_interval(weeks=>2) as new_date

出力:

PostgreSQL MAKE_INTERVAL() 関数 5
  • PostgreSQL の MAKE_INTERVAL() 関数を使用して日付に日数を追加します。

以下の例では、「日”日付に 4 日を追加するには、時間間隔引数として を指定し、単位引数として 4 を指定します。

SELECT '2024-02-24'::date + make_interval(days=>4) as new_date

出力:

PostgreSQL MAKE_INTERVAL() 関数 6
  • PostgreSQL の MAKE_INTERVAL() 関数を使用して datetime に時間を追加します。

以下の例では、「時間”datetime に 4 時間を追加するには、時間間隔引数として 1、単位引数として 4 を指定します。

SELECT ' 2024-02-24 12:00:00'::timestamp + make_interval(hours=>4) as new_date

出力:

PostgreSQL MAKE_INTERVAL() 関数 7
  • PostgreSQL の MAKE_INTERVAL() 関数を使用して datetime に分を追加します。

以下の例では、「分”datetime に 30 分を追加するには、時間間隔引数として を指定し、単位引数として 30 を指定します。

SELECT ' 2024-02-24 12:00:00'::timestamp + make_interval(mins=>30) as new_date

出力:

PostgreSQL MAKE_INTERVAL() 関数 8
  • PostgreSQL の MAKE_INTERVAL() 関数を使用して datetime に秒を追加します。

以下の例では、「秒”datetime に 30 秒を追加するには、時間間隔引数として を指定し、単位引数として 30 を指定します。

SELECT ' 2024-02-24 12:00:00'::timestamp + make_interval(secs=>30) as new_date

出力:

PostgreSQL MAKE_INTERVAL() 関数 9

PostgreSQL の MAKE_INTERVAL() 関数の例 1

次の例では、MAKE_INTERVAL() 関数を使用して、4 年、6 か月、13 日、5 時間を表す間隔を作成します。

SELECT MAKE_INTERVAL(years => 4, months => 6, days => 13, hours => 5);

出力:

PostgreSQL MAKE_INTERVAL() 関数 10

PostgreSQL の MAKE_INTERVAL() 関数の例 2

次の例では、MAKE_INTERVAL() 関数を使用して、年、月、日、時間、分、秒を表す間隔を作成します。以下の例では、3 番目と 4 番目の引数を組み合わせて日数を作成します。つまり、3 週間 (21 日) + 4 日 = 25 日です。

SELECT MAKE_INTERVAL(1,2,3,4,5,6,7);

出力:

PostgreSQL MAKE_INTERVAL() 関数 12

PostgreSQL の MAKE_INTERVAL() 関数の例 2

次の例では、MAKE_INTERVAL() 関数を使用して、年、月、日、時間、分、秒を表す間隔を作成し、それを音声で出力します。

SET intervalstyle = 'postgres_verbose';
SELECT make_interval(1,2,3,4,5,6,7);

出力:

PostgreSQL MAKE_INTERVAL() 関数 13