Skip to content

非公式本サイトは非公式の日本語ドキュメントであり、Cloudflare 公式サイトではありません。最新情報はdevelopers.cloudflare.comをご確認ください。

日付と時刻の関数

最終更新 Markdown で表示Agent セットアップ

formatDateTime

使い方:

formatDateTime(<datetime expression>, <format string>[, <timezone string>])

formatDateTime は、指定した書式文字列に従って日時を文字列として出力します。対応している書式オプションの一覧は、 ClickHouse のドキュメント を参照してください。

例:

-- prints the current YYYY-MM-DD in UTC
formatDateTime(now(), '%Y-%m-%d')

-- prints YYYY-MM-DD in the datetime's timezone
formatDateTime(<a datetime with a timezone>, '%Y-%m-%d')
formatDateTime(toDateTime('2022-12-01 16:17:00', 'America/New_York'), '%Y-%m-%d')

-- prints YYYY-MM-DD in UTC
formatDateTime(<a datetime with a timezone>, '%Y-%m-%d', 'Etc/UTC')
formatDateTime(toDateTime('2022-12-01 16:17:00', 'America/New_York'), '%Y-%m-%d', 'Etc/UTC')

now

使い方:

now()

現在時刻を DateTime として返します。

today 新規

使い方:

today()

現在の日付を Date として返します。

toDateTime

使い方:

toDateTime(<expression>[, 'timezone string'])

toDateTime は式を日時に変換します。この関数は ISO 8601 形式のタイムゾーンをサポートしません。時刻が UTC でない場合は、2 番目の任意引数でタイムゾーンを指定する必要があります。

例:

-- double1 contains a unix timestamp in seconds
toDateTime(double1)

-- blob1 contains an datetime in the format 'YYYY-MM-DD hh:mm:ss'
toDateTime(blob1)

-- literal values:
toDateTime(355924804) -- unix timestamp
toDateTime('355924804') -- string containing unix timestamp
toDateTime('1981-04-12 12:00:04') -- string with datetime in 'YYYY-MM-DD hh:mm:ss' format

-- interpret a date relative to New York time
toDateTime('2022-12-01 16:17:00', 'America/New_York')

toYear 新規

使い方:

toYear(<datetime>)

toYear は日時の年を返します。

例:

-- returns the number 2025
toYear(toDateTime('2025-10-27 00:00:00'))

toMonth 新規

使い方:

toMonth(<datetime>)

toMonth は日時の月を返します。

例:

-- returns the number 10
toMonth(toDateTime('2025-10-27 00:00:00'))

toDayOfWeek 新規

使い方:

toDayOfWeek(<datetime>)

toDayOfWeek は日時を受け取り、曜日を数値で返します。

月曜日は 1、火曜日は 2、以降同様です。

例:

-- returns the number 1 for Monday 27th October 2025
toDayOfWeek(toDateTime('2025-10-27 00:00:00'))

-- returns the number 2 for Tuesday 28th October 2025
toDayOfWeek(toDateTime('2025-10-28 00:00:00'))

-- returns the number 7 for Sunday 2nd November 2025
toDayOfWeek(toDateTime('2025-11-02 00:00:00'))

toDayOfMonth 新規

使い方:

toDayOfMonth(<datetime>)

toDayOfMonth は日時から月内の日を返します。

例:

-- returns the number 27
toDayOfMonth(toDateTime('2025-10-27 00:00:00'))

toHour 新規

使い方:

toHour(<datetime>)

toHour は日時からその日の時を返します。

例:

-- returns the number 9
toHour(toDateTime('2025-10-27 09:11:13'))

toMinute 新規

使い方:

toMinute(<datetime>)

toMinute は日時からその時の分を返します。

例:

-- returns the number 11
toMinute(toDateTime('2025-10-27 09:11:13'))

toSecond 新規

使い方:

toSecond(<datetime>)

toSecond は日時からその分の秒を返します。

例:

-- returns the number 13
toSecond(toDateTime('2025-10-27 09:11:13'))

toUnixTimestamp

使い方:

toUnixTimestamp(<datetime>)

toUnixTimestamp は日時を整数の Unix タイムスタンプに変換します。

例:

-- get the current unix timestamp
toUnixTimestamp(now())

toStartOfInterval

使い方:

toStartOfInterval(<datetime>, INTERVAL '<n>' <unit>[, <timezone string>])

toStartOfInterval は日時を、指定した間隔の最も近いオフセットまで切り下げます。データを同じ大きさの時間範囲にまとめるときに便利です。

例:

-- round the current time down to the nearest 15 minutes
toStartOfInterval(now(), INTERVAL '15' MINUTE)

-- round a timestamp down to the day
toStartOfInterval(timestamp, INTERVAL '1' DAY)

-- count the number of datapoints filed in each hourly window
SELECT
  toStartOfInterval(timestamp, INTERVAL '1' HOUR) AS hour,
  sum(_sample_interval) AS count
FROM your_dataset
GROUP BY hour
ORDER BY hour ASC

toStartOfYear 新規

使い方:

toStartOfYear(<datetime>)

toStartOfYear は日時を、直近の年始まで切り下げます。データを同じ大きさの時間範囲にまとめるときに便利です。

例:

-- round a timestamp down to 2025-01-01 00:00:00
toStartOfYear(toDateTime('2025-10-27 00:00:00'))

toStartOfMonth 新規

使い方:

toStartOfMonth(<datetime>)

toStartOfMonth は日時を、直近の月初まで切り下げます。データを同じ大きさの時間範囲にまとめるときに便利です。

例:

-- round a timestamp down to 2025-10-01 00:00:00
toStartOfMonth(toDateTime('2025-10-27 00:00:00'))

toStartOfWeek 新規

使い方:

toStartOfWeek(<datetime>)

toStartOfWeek は日時を週の始まりまで切り下げます。データを同じ大きさの時間範囲にまとめるときに便利です。

週の最初の日は月曜日です。

例:

-- round a time on a Monday down to Monday 2025-10-27 00:00:00
toStartOfWeek(toDateTime('2025-10-27 00:00:00'))

-- round a time on a Wednesday down to Monday 2025-10-27 00:00:00
toStartOfWeek(toDateTime('2025-10-29 00:00:00'))

toStartOfDay 新規

使い方:

toStartOfDay(<datetime>)

toStartOfDay は日時を、直近の日の始まりまで切り下げます。データを同じ大きさの時間範囲にまとめるときに便利です。

例:

-- round a timestamp down to 2025-10-27 00:00:00
toStartOfDay(toDateTime('2025-10-27 00:00:00'))

toStartOfHour 新規

使い方:

toStartOfHour(<datetime>)

toStartOfHour は日時を、直近の時の始まりまで切り下げます。データを同じ大きさの時間範囲にまとめるときに便利です。

例:

-- round a timestamp down to 2025-10-27 16:00:00
toStartOfHour(toDateTime('2025-10-27 16:55:25'))

toStartOfFifteenMinutes 新規

使い方:

toStartOfFifteenMinutes(<datetime>)

toStartOfFifteenMinutes は日時を、直近の 15 分まで切り下げます。データを同じ大きさの時間範囲にまとめるときに便利です。

例:

-- round a timestamp down to 2025-10-27 16:45:00
toStartOfFifteenMinutes(toDateTime('2025-10-27 16:55:25'))

toStartOfTenMinutes 新規

使い方:

toStartOfTenMinutes(<datetime>)

toStartOfTenMinutes は日時を、直近の 10 分まで切り下げます。データを同じ大きさの時間範囲にまとめるときに便利です。

例:

-- round a timestamp down to 2025-10-27 16:50:00
toStartOfTenMinutes(toDateTime('2025-10-27 16:55:25'))

toStartOfFiveMinutes 新規

使い方:

toStartOfFiveMinutes(<datetime>)

toStartOfFiveMinutes は日時を、直近の 5 分まで切り下げます。データを同じ大きさの時間範囲にまとめるときに便利です。

例:

-- round a timestamp down to 2025-10-27 16:55:00
toStartOfFiveMinutes(toDateTime('2025-10-27 16:55:25'))

toStartOfMinute 新規

使い方:

toStartOfMinute(<datetime>)

toStartOfMinute は日時を、直近の分まで切り下げます。データを同じ大きさの時間範囲にまとめるときに便利です。

例:

-- round a timestamp down to 2025-10-27 16:55:00
toStartOfMinute(toDateTime('2025-10-27 16:55:25'))

toYYYYMM 新規

使い方:

toYYYYMM(<datetime>)

toYYYYMM は日時の年と月を表す数値を返します。 たとえば 2025-05-03 の日時は数値 202505 を返します。

例:

-- returns the number 202510
toYYYYMM(toDateTime('2025-10-27 16:55:25'))

役に立ちましたか?