Unixタイムスタンプがある場合は、SQLiteのDATETIME()を使用できます。 unixepochで機能する 実際の日付と時刻を計算する修飾子。
または、DATE()を使用することもできます 返される日付のみが必要な場合に機能します。また、TIME()を使用することもできます 時間部分だけを返す関数。
日付と時刻を取得する
DATETIME()の使用例を次に示します。 unixepochで機能する 修飾子:
SELECT DATETIME(1793956207, 'unixepoch'); 結果:
2026-11-06 09:10:07
日付を取得
DATE()を使用できます 返される日付のみが必要な場合は関数:
SELECT DATE(1793956207, 'unixepoch'); 結果:
2026-11-06
時間を取得
TIME()の使用 関数は時間部分のみを返します:
SELECT TIME(1793956207, 'unixepoch'); 結果:
09:10:07
ローカルタイムゾーンを補正する
localtimeを追加することもできます 出力をローカルタイムゾーンに調整する修飾子:
SELECT DATETIME(1793956207, 'unixepoch', 'localtime'); 結果:
2026-11-06 19:10:07
localtime 修飾子は、指定された時間値が協定世界時(UTC)であると想定し、localtimeになるようにその時間値を調整します。 。
auto 修飾子
SQLite 3.38.0から、autoを使用できます unixepochの代わりに修飾子 修飾子:
SELECT DATETIME(1793956207, 'auto'); 結果:
2026-11-06 09:10:07
自動修飾子を使用すると、実際の値に応じて、値がユリウス日番号またはUnixタイムスタンプとして解釈されます。
値が0.0の間にある場合 および5373484.499999 、その後、ユリウス日番号として解釈されます(-4713-11-24 12:00:00の間の日付に対応します) および9999-12-31 23:59:59 、包括的)。有効なユリウス日数の範囲外であるが、-210866760000の範囲内の数値の場合 253402300799へ 、auto 修飾子を使用すると、値がUnixタイムスタンプとして解釈されます。他の数値は範囲外であり、NULLを返します。