メインコンテンツへスキップ
データ型 Time は、時・分・秒の部分を持つ時刻を表します。 これはどの暦日にも依存せず、日・月・年の部分が不要な値に適しています。 構文:
Time
文字列表現の範囲: [-999:59:59, 999:59:59]。 分解能: 1秒。

実装の詳細

表現とパフォーマンス。 データ型 Time は内部的に、秒をエンコードした符号付き 32 ビット整数として格納されます。 Time 型と DateTime 型の値はバイトサイズが同じであるため、パフォーマンスも同程度です。 正規化。 文字列を Time にパースする際、時刻の各部分は正規化されますが、妥当性の検証は行われません。 たとえば、25:70:7026:11:10 と解釈されます。 負の値。 先頭のマイナス記号はサポートされ、そのまま保持されます。 負の値は通常、Time 値に対する算術演算によって生じます。 Time 型では、テキスト入力 (例: '-01:02:03') でも数値入力 (例: -3723) でも、負の入力は保持されます。 飽和。 時刻の値は [-999:59:59, 999:59:59] の範囲に制限されます。 時間が 999 を超える値 (または -999 未満の値) は、テキストで表現した場合も再度テキストに戻した場合も、999:59:59 (または -999:59:59) として表されます。 タイムゾーンTime はタイムゾーンをサポートしません。つまり、Time の値は地域的な文脈なしに解釈されます。 型パラメータとして、または値の作成時に Time にタイムゾーンを指定すると、エラーになります。 同様に、Time カラムにタイムゾーンを適用または変更することもサポートされておらず、エラーになります。 Time の値が異なるタイムゾーンのもとで暗黙に再解釈されることはありません。

1. Time 型のカラムを持つテーブルを作成し、データを挿入する例:
CREATE TABLE tab
(
    `event_id` UInt8,
    `time` Time
)
ENGINE = TinyLog;
-- Time をパース
-- - 文字列から、
-- - 00:00:00 からの秒数として解釈される整数から。
INSERT INTO tab VALUES (1, '14:30:25'), (2, 52225);

SELECT * FROM tab ORDER BY event_id;
   ┌─event_id─┬──────time─┐
1. │        1 │ 14:30:25 │
2. │        2 │ 14:30:25 │
   └──────────┴───────────┘
2. Time の値によるフィルタリング
SET use_legacy_to_time = 0;
SELECT * FROM tab WHERE time = toTime('14:30:25')
   ┌─event_id─┬──────time─┐
1. │        1 │ 14:30:25 │
2. │        2 │ 14:30:25 │
   └──────────┴───────────┘
Time カラムの値は、WHERE 述語で文字列を使ってフィルタできます。これは自動的に Time に変換されます。
SELECT * FROM tab WHERE time = '14:30:25'
   ┌─event_id─┬──────time─┐
1. │        1 │ 14:30:25 │
2. │        2 │ 14:30:25 │
   └──────────┴───────────┘
3. 結果の型を確認します:
SELECT CAST('14:30:25' AS Time) AS column, toTypeName(column) AS type
   ┌────column─┬─type─┐
1. │ 14:30:25 │ Time │
   └───────────┴──────┘

Date への加算

Time 値は Date または Date32 値に加算でき、その結果 DateTime または DateTime64 になります。
SET use_legacy_to_time = 0;
SELECT toDate('2024-07-15') + toTime('14:30:25') as datetime;
   ┌────────────datetime─┐
1. │ 2024-07-15 14:30:25 │
   └─────────────────────┘
サポートされているすべての組み合わせと結果の型について詳しくは、日付と時刻の加算を参照してください。

関連項目

最終更新日 2026年6月10日