保存された時刻の比較

データベース内に「時刻のデータ」を記録するときは文字列で値を保存しませんよね。数字のみを格納する前提では数値型を選べば容量を抑えられるからです。

下記の文字列型と数値型は同時刻を示しています。

▼文字列型
2025/10/25 02:15:25

▼数値型
1761358525

上記で言う「数値型」の値はUNIXタイムスタンプですね。正確にはミリ秒を含むタイプもあるのであと3桁長くなります。ちなみにミリ秒まで含んだ表記が以下。

▼文字列型
2025/10/25 02:15:25.123

▼数値型
1761358525123

ミリ秒まで含むと13桁。もっとも軽いのはミリ秒を省いた10桁。数値型はスラッシュや他の記号も何もない純粋な数字だけなのでデータとしては軽くなります。ミリ秒まで使うかはタイムスタンプの「細かな精度」が必要なのかどうかで選ぶのが一般的ですね。

そしてUNIXはUTC基準の時刻です。そのため日本時間で使用する場合は+9時間の処理が必要になります。データベース容量を軽くするためにUNIXタイムスタンプを使うわけですが世界基準の時刻なので比較時は状況次第で変換しなければなりません。

時刻の比較はどんな形式でデータベース内に値を保存しているかで方法が変わります。日本時間を保存するのか世界標準時刻なのか等も細かくて奥が深いです。

データベース上で軽いのは数値型なので覚えておくと方向性が決まるかもしれません。

記事にコメントを残す