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

【MySQL】DATE_FORMAT()で時刻データをHH:MM形式のみで表示する方法

MySQLで時刻データをHH:MM形式のみで表示する方法

MySQLでは、DATE_FORMAT()関数を使うことで、TIME型の時刻データから秒を除いた「HH:MM(時:分)」形式のみを取得・表示できます。TIME型は内部的に「HH:MM:SS」形式で値を保持しているため、表示時にフォーマットを指定するのが一般的な方法です。

基本構文

select DATE_FORMAT(yourColumnName, "%H:%i") AS anyAliasName from yourTableName;

%Hは24時間表記の「時」(00〜23)、%iは「分」(00〜59)を表す書式指定子です。

サンプルテーブルの作成

まず、TIME型のカラムを持つテーブルを作成します。

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

レコードの挿入

insertコマンドでテーブルにデータを挿入します。

mysql> insert into DemoTable values('08:20');
Query OK, 1 row affected (0.19 sec)
mysql> insert into DemoTable values('05:40');
Query OK, 1 row affected (0.12 sec)

登録データの確認

select文でテーブル内の全レコードを表示してみましょう。

mysql> select *from DemoTable;

実行結果は以下の通りです。TIME型のため、秒まで表示されていることがわかります。

+-------------+
| Arrivaltime |
+-------------+
| 08:20:00    |
| 05:40:00    |
+-------------+
2 rows in set (0.00 sec)

DATE_FORMAT()でHH:MM形式のみを取得する

次のクエリを実行すると、時刻データを「HH:MM」形式のみで表示できます。

mysql> select DATE_FORMAT(Arrivaltime, "%H:%i") AS ONLY_HOUR_MINUTE from DemoTable;

実行結果:

+------------------+
| ONLY_HOUR_MINUTE |
+------------------+
| 08:20            |
| 05:40            |
+------------------+
2 rows in set (0.03 sec)

このようにDATE_FORMAT()関数を利用すれば、元のデータを変更することなく、表示や出力の際だけ時刻を「HH:MM」形式に整形することが可能です。画面表示やCSV出力など、秒が不要な場面でぜひ活用してください。

  1. MySQLで列エイリアスを特定のデータ型として扱う方法(CASTとCASEの活用)

    MySQLでは、符号なし整数型(UNSIGNED)の列をそのままSELECTすると、負の値を扱えないという制約があります。そこで、CASEステートメントとCAST関数を組み合わせることで、列エイリアスの結果を特定のデータ型(ここではSIGNED=符号付き整数)に強制的に変換する方法を紹介します。1. サンプルテーブルの作成まず、テスト用のテーブルを作成します。「Value」列はUNSIGNED型、「Status」列はTINYINT(1)型とします。mysql> create table DemoTable1505    -> ( &

  2. MySQLでDATETIME型の列に時間を追加する方法|ADDTIME()関数の使い方を解説

    DATETIME型の値に時間を加算したい場合、MySQLではADDTIME()関数を使うのが便利です。この記事では、実際にテーブルを作成し、サンプルデータを挿入しながら、ADDTIME()関数で時間を追加する手順をわかりやすく解説します。1. テーブルを作成するまず、DATETIME型の列を持つテーブルを作成します。mysql> create table DemoTable1848 ( ShippingDate datetime ); Query OK, 0 rows affected (0.00 sec)2. サンプルデータを挿入する次に、INSERT文を使って