このドキュメントはAIによって翻訳されました。不正確な情報については、英語版をご参照ください
日付時刻フィールドタイプには、以下の種類があります。
各日付時刻関連フィールドタイプの例を以下に示します。
| フィールドタイプ | 例 | 説明 |
|---|---|---|
| 日付時刻(タイムゾーンあり) | 2024-08-24T07:30:00.000Z | UTC(協定世界時)に変換され、タイムゾーンの調整が可能です |
| 日付時刻(タイムゾーンなし) | 2024-08-24 15:30:00 | タイムゾーンを考慮せず、日付と時刻のみを記録します |
| 日付(時刻なし) | 2024-08-24 | 日付情報のみを保存し、時刻は含みません |
| 時刻 | 15:30:00 | 時刻情報のみを保存し、日付は含みません |
| Unix タイムスタンプ | 1724437800 | UTC 1970年1月1日00:00:00からの経過秒数を表します |
NocoBase、MySQL、およびPostgreSQLの対応表を以下に示します。
| フィールドタイプ | NocoBase | MySQL | PostgreSQL |
|---|---|---|---|
| 日付時刻(タイムゾーンあり) | Datetime with timezone | TIMESTAMP DATETIME | TIMESTAMP WITH TIME ZONE |
| 日付時刻(タイムゾーンなし) | Datetime without timezone | DATETIME | TIMESTAMP WITHOUT TIME ZONE |
| 日付(時刻なし) | Date | DATE | DATE |
| 時刻 | Time | TIME | TIME WITHOUT TIME ZONE |
| Unix タイムスタンプ | Unix timestamp | INTEGER BIGINT | INTEGER BIGINT |
| 時刻(タイムゾーンあり) | - | - | TIME WITH TIME ZONE |
備考:
TIMESTAMP型は、UTC 1970-01-01 00:00:01から2038-01-19 03:14:07までの範囲をカバーします。この範囲を超える日付や時刻を扱う場合は、DATETIMEまたはBIGINTを使用してUnixタイムスタンプを保存することをお勧めします。これには日付時刻(タイムゾーンあり)とUnix タイムスタンプが含まれます。

備考:
DATETIME型を使用しています。保存される日付値は、サーバーのTZ環境変数に基づいて変換された値です。そのため、TZ環境変数が変更されると、保存されている日付時刻の値も変化します。
UTC(協定世界時、Coordinated Universal Time)は、世界中の時間を調整・同期するために使用されるグローバルな時間標準です。原子時計に基づいた高精度な時間標準であり、地球の自転と同期しています。
UTCとローカルタイムにはタイムゾーンの差があるため、UTCの生の値(オリジナル値)を直接表示すると、ユーザーが誤解を招く可能性があります。例えば、以下のようになります。
| タイムゾーン | 日付時刻 |
|---|---|
| UTC | 2024-08-24T07:30:00.000Z |
| 東8区 (UTC+8) | 2024-08-24 15:30:00 |
| 東5区 (UTC+5) | 2024-08-24 12:30:00 |
| 西5区 (UTC-5) | 2024-08-24 02:30:00 |
| イギリス時間 (UTC+0) | 2024-08-24 07:30:00 |
| 中部時間 (UTC-6) | 2024-08-23 01:30:00 |
これらはすべて同じ時刻を表していますが、タイムゾーンが異なるだけです。