MySQL でミリ秒の精度でタイムスタンプを保存する方法
MySQL で正確なタイムスタンプを扱う場合、その制限を理解することが重要になります。タイムスタンプのデータ型。デフォルトでは、MySQL は秒精度でタイムスタンプを保存します。ミリ秒の精度でタイムスタンプを保存する必要がある場合は、特定の考慮事項が必要になります。
MySQL のアップグレード
まず、分数をサポートするには MySQL バージョン 5.6.4 以降が必要です。 -2回目のデータ型。バージョンを確認するには、クエリ SELECT NOW(3) を使用します。エラーが発生した場合は、MySQL のアップグレードが必要になる場合があります。
列の宣言
小数秒時間データ型で列を作成するには、次の構文を使用します。
DATETIME(n)
ここで、n は小数点以下の秒数を表します。たとえば、DATETIME(3) はミリ秒単位の分解能を提供します。同様に、TIMESTAMP(n) も使用できます。ここで、n は Unix スタイルのタイムスタンプのマイクロ秒の分解能を指定します。
サブ秒時間の取得
システム時刻を取得するには、次のコマンドを使用します。ミリ秒の精度。NOW(3):
SELECT NOW(3);
がある場合は、 Unix エポックからのミリ秒単位で表されるタイムスタンプ (JavaScript タイムスタンプなど) は、FROM_UNIXTIME(ms * 0.001) を使用して変換します。
古い MySQL バージョン
MySQL をアップグレードする場合は、オプションではありません。格納するには BIGINT または DOUBLE 列の使用を検討してください。数値としてのタイムスタンプ。マイクロ秒への変換は、FROM_UNIXTIME(col * 0.001) を使用して行うことができます。このような列に現在時刻を格納するには、UNIX_TIMESTAMP() * 1000 を使用します。
結論
小数秒時間のデータ型と変換手法を理解することで、次のことが可能になります。 MySQL にミリ秒精度でタイムスタンプを効果的に保存および取得します。適切な MySQL バージョンを使用していることを確認し、正しい列宣言構文を実装することが、1 秒未満のタイムスタンプを扱う鍵となります。
以上がMySQL でミリ秒精度のタイムスタンプを実現するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。