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

MySQLでCURRENT_TIMESTAMPをAM/PM形式にフォーマットする方法

MySQLで時刻データをAM/PM形式(12時間制)で表示したい場合は、DATE_FORMAT()関数を使用します。フォーマット指定子として %r を使うことで、「hh:mm:ss AM/PM」という形式で時刻を簡単に取得できます。

サンプルテーブルの作成

まず、デモ用のテーブルを作成しましょう。

mysql> create table DemoTable
(
    LoginTime time
);
Query OK, 0 rows affected (0.48 sec)

レコードの挿入

insertコマンドを使って、テーブルにいくつかのレコードを挿入します。

mysql> insert into DemoTable values('13:10');
Query OK, 1 row affected (0.17 sec)
mysql> insert into DemoTable values('20:08');
Query OK, 1 row affected (0.08 sec)
mysql> insert into DemoTable values('10:55');
Query OK, 1 row affected (0.12 sec)
mysql> insert into DemoTable values('16:40');
Query OK, 1 row affected (0.11 sec)

テーブルの内容を確認

select文ですべてのレコードを表示してみます。

mysql> select *from DemoTable;

実行結果は以下の通りです。

+-----------+
| LoginTime |
+-----------+
| 13:10:00  |
| 20:08:00  |
| 10:55:00  |
| 16:40:00  |
+-----------+
4 rows in set (0.00 sec)

CURRENT_TIMESTAMPをAM/PM形式にフォーマットするクエリ

以下のクエリでは、DATE_FORMAT()関数と %r 指定子を組み合わせて、24時間制の時刻を12時間制のAM/PM形式に変換しています。

mysql> select date_format(LoginTime,'%r') from DemoTable;

実行すると、次のような出力が得られます。

+-----------------------------+
| date_format(LoginTime,'%r') |
+-----------------------------+
| 01:10:00 PM                 |
| 08:08:00 PM                 |
| 10:55:00 AM                 |
| 04:40:00 PM                 |
+-----------------------------+
4 rows in set (0.00 sec)

このように、TIME型やCURRENT_TIMESTAMPで取得した24時間制の時刻データも、DATE_FORMAT()の %r 指定子を使えば「午前/午後」付きの見やすい形式へ簡単に変換できます。なお、秒を省いて「1:10 PM」のようなシンプルな表示にしたい場合は、%l:%i %p を指定子として使用するとよいでしょう。

  1. PHP変数「11:00 AM」をMySQLの時間形式に変換する方法

    PHPの「11:00 AM」をMySQLの時間形式に変換する方法 MySQLのTIME型やDATETIME型は、時刻を24時間表記の「HH:MM:SS」形式で管理します。そのため、「11:00 AM」のようにAM/PMを含む文字列をデータベースに保存する場合は、事前に形式を変換しておく必要があります。本記事では、PHP標準のDateTimeクラスを使った変換方法を、サンプルコードと実行結果付きで解説します。 変換の基本の流れ DateTime::createFromFormat() … 入力文字列をDateTimeオブジェクトとして解析する format() … 解析結果を「H:i:s」(2

  2. MySQLでレコードを挿入しながら日付をフォーマットする方法(DATE_FORMAT活用)

    MySQLでは、INSERT文の中でDATE_FORMAT()関数を使うことで、レコードを挿入する際に日付を任意の形式に整形できます。本記事では、実際にテーブルを作成し、日付をフォーマットしながらデータを挿入する手順を具体的なSQL例とともに解説します。1. テーブルの作成まず、フォーマット済みの日付文字列を格納するためのテーブルを作成します。ここでは、VARCHAR型のカラム「ShippingDate」を持つシンプルなテーブルを用意します。mysql> create table DemoTable2012 -> ( -> ShippingDate varch