MySQL
 Computer >> コンピューター >  >> プログラミング >> MySQL

MySQLでミリ秒単位の時刻を保存・取得する方法【now(3)関数の使い方】

MySQLで現在時刻をミリ秒単位で保存したい場合は、now(3)関数を使用します。括弧内の「3」は小数点以下(ミリ秒)の桁数を表しており、DATETIME(3)型のカラムと組み合わせることで、ミリ秒まで精度の高い時刻を記録できます。

ここからは、実際にテーブルを作成し、ミリ秒付きの時刻を挿入・確認するまでの手順を順番に解説します。

1. テーブルの作成

まず、CREATE文を使って、DATETIME(3)型のカラムを持つテーブルを作成します。

mysql> CREATE table MilliSecondDemo
-> (
-> MyTimeInMillSec datetime(3)
-> );
Query OK, 0 rows affected (0.70 sec)

2. レコードの挿入

次に、INSERT文とnow(3)関数を使って、現在時刻をミリ秒付きで挿入します。

mysql> INSERT into MilliSecondDemo values(now(3));
Query OK, 1 row affected (0.98 sec)

3. テーブルの内容を確認

SELECT文で、実際に登録されたデータを確認してみましょう。

mysql> SELECT * from MilliSecondDemo;

実行結果

以下が出力結果です。

+-------------------------+
| MyTimeInMillSec |
+-------------------------+
| 2018-10-08 15:19:50.202 |
+-------------------------+
1 row in set (0.00 sec)

出力結果を見ると、「2018-10-08 15:19:50.202」のように、時刻の末尾に「.202」というミリ秒部分が記録されていることがわかります。

まとめ

MySQLでミリ秒単位の時刻を扱うには、カラムをDATETIME(3)として定義し、値の挿入時にnow(3)を使用します。括弧内の「3」は小数点以下の桁数を意味し、必要に応じて最大6(マイクロ秒精度)まで指定することも可能です。ログの記録や処理時間の計測など、より正確な時刻管理が必要な場面でぜひ活用してください。

  1. MySQLテーブルを一括更新する方法|ADDTIME関数で複数行の時刻データをまとめて変更

    MySQLでは、UPDATE文と関数を組み合わせることで、テーブル内の複数のレコードを一度に一括更新(バッチ更新)できます。本記事では、時刻型(TIME型)のカラムに対してADDTIME関数を使い、すべての行の時刻をまとめて加算・更新する手順を、実際のSQL文と実行結果付きでわかりやすく解説します。1. サンプルテーブルを作成するまず、時刻データを格納するためのテーブル「DemoTable」を作成します。mysql> create table DemoTable    -> (    -> Bre

  2. MySQLでテーブルが存在するかどうかを確認する方法【INFORMATION_SCHEMA.TABLES活用】

    MySQLでテーブルの存在を確認するにはMySQLにおいて、特定のテーブルがデータベース内に存在するかどうかを確認したい場合、INFORMATION_SCHEMA.TABLES を利用するのが一般的な方法です。このシステムビューには、サーバー上のすべてのデータベースとテーブルに関するメタデータが格納されており、これを参照することで目的のテーブルが存在するかを簡単に調べられます。基本構文テーブルの存在確認は、以下のようなSELECT文で行います。select table_name from information_schema.tables where table_schema=database