DATE_PART 関数 - Amazon Redshift

DATE_PART 関数

DATE_PART は式から日付部分の値を抽出します。DATE_PART は PGDATE_PART 関数のシノニムです。

構文

DATE_PART(datepart, {date|timestamp})

引数

datepart

関数が実行される日付の値 (例: 年、月、または日) の特定部分の識別子リテラルまたは文字列。詳細については、「日付関数またはタイムスタンプ関数の日付部分」を参照してください。

{date|timestamp}

日付またはタイムスタンプの列、あるいは暗黙的に日付またはタイムスタンプに変換される式。式は、指定された日付部分を含む日付またはタイムスタンプの式である必要があります。

戻り型

DOUBLE

DATE_PART 関数のデフォルトの列名は pgdate_part です。次の例の一部で使用されるデータの詳細については、「サンプルデータベース」を参照してください。

次の例では、タイムスタンプリテラルから分を見つけます。

SELECT DATE_PART(minute, timestamp '20230104 04:05:06.789'); pgdate_part 6

次の例では、タイムスタンプリテラルから週番号を見つけます。週番号の計算は、ISO 8601 標準に従います。詳細については、Wikipedia の「ISO 8601」を参照してください。

SELECT DATE_PART(week, timestamp '20220502 04:05:06.789'); pgdate_part 18

次の例では、タイムスタンプリテラルから日付を見つけます。

SELECT DATE_PART(day, timestamp '20220502 04:05:06.789'); pgdate_part 2

次の例では、タイムスタンプリテラルから曜日を見つけます。週番号の計算は、ISO 8601 標準に従います。詳細については、Wikipedia の「ISO 8601」を参照してください。

SELECT DATE_PART(dayofweek, timestamp '20220502 04:05:06.789'); pgdate_part 1

次の例では、タイムスタンプリテラルから世紀を見つけます。世紀の計算は、ISO 8601 標準に従います。詳細については、Wikipedia の「ISO 8601」を参照してください。

SELECT DATE_PART(century, timestamp '20220502 04:05:06.789'); pgdate_part 21

次の例では、日付リテラルから月を見つけます。

SELECT DATE_PART(month, date '20220502'); pgdate_part 5

次の例は、DATE_PART 関数をテーブルの列に適用します。

select date_part(w, listtime) as weeks, listtime from listing where listid=10; weeks | listtime ------+--------------------- 25 | 2008-06-17 09:44:54 (1 row)

完全形あるいは省略形の日付部分に名前を付けることができます。この場合、w は週を指します。

曜日の日付部分は、0~6 の整数を返します (0 は日曜日)。dow (曜日) とともに DATE_PART を使用し、土曜のイベントを表示します。

select date_part(dow, starttime) as dow, starttime from event where date_part(dow, starttime)=6 order by 2,1; dow | starttime -----+--------------------- 6 | 2008-01-05 14:00:00 6 | 2008-01-05 14:00:00 6 | 2008-01-05 14:00:00 6 | 2008-01-05 14:00:00 ... (1147 rows)