MySQLでDATETIME型に10分を追加する方法|DATE_ADD関数の使い方
MySQLのDATE_ADD()関数で日時に10分を加算する方法
MySQLの日時(DATETIME)形式の値に10分を追加するには、DATE_ADD()関数を使用します。基本的な構文は以下のとおりです。
SELECT DATE_ADD(カラム名, INTERVAL 10 MINUTE) FROM テーブル名;
検証用テーブルの作成
まず、動作を確認するためのサンプルテーブルを作成します。
mysql> CREATE TABLE add10MinuteDemo
-> (
-> Id int NOT NULL AUTO_INCREMENT PRIMARY KEY,
-> DelayDatetime datetime
-> );
Query OK, 0 rows affected (0.83 sec)
レコードの挿入
続いて、INSERTコマンドを使ってテーブルに日時データを挿入します。
mysql> INSERT INTO add10MinuteDemo(DelayDatetime) VALUES('2019-01-23 12:45:56');
Query OK, 1 row affected (0.16 sec)
mysql> INSERT INTO add10MinuteDemo(DelayDatetime) VALUES('2019-03-25 10:30:23');
Query OK, 1 row affected (0.19 sec)
mysql> INSERT INTO add10MinuteDemo(DelayDatetime) VALUES('2019-04-21 04:04:30');
Query OK, 1 row affected (0.19 sec)
テーブルの内容を確認
SELECT文ですべてのレコードを表示してみましょう。
mysql> SELECT * FROM add10MinuteDemo;
実行結果は以下のとおりです。
+----+---------------------+ | Id | DelayDatetime | +----+---------------------+ | 1 | 2019-01-23 12:45:56 | | 2 | 2019-03-25 10:30:23 | | 3 | 2019-04-21 04:04:30 | +----+---------------------+ 3 rows in set (0.00 sec)
日時に10分を追加するクエリ
それでは、DATE_ADD()関数を使って各日時に10分を加算します。
mysql> SELECT DATE_ADD(DelayDatetime, INTERVAL 10 MINUTE) FROM add10MinuteDemo;
実行結果は以下のとおりです。すべての行の日時が正確に10分進んでいることが確認できます。
+--------------------------------------------+ | date_add(DelayDatetime,interval 10 minute) | +--------------------------------------------+ | 2019-01-23 12:55:56 | | 2019-03-25 10:40:23 | | 2019-04-21 04:14:30 | +--------------------------------------------+ 3 rows in set (0.00 sec)
補足:INTERVALで指定できる主な時間単位
DATE_ADD()関数の第2引数には、MINUTE以外にもさまざまな単位を指定できます。
- SECOND … 秒を追加
- HOUR … 時間を追加
- DAY … 日を追加
- MONTH … 月を追加
- YEAR … 年を追加
また、逆に日時を減算したい場合はDATE_SUB()関数を使用します。DATE_ADD()に負の値を指定しても同じ結果が得られます。
さらに、UPDATE文と組み合わせることで、テーブル内の既存データ自体を一括更新することも可能です。
UPDATE テーブル名 SET カラム名 = DATE_ADD(カラム名, INTERVAL 10 MINUTE);
-
MySQLでDATETIME型の日時に日数を追加する方法
MySQLでは、DATE_ADD()関数を使うことで、DATETIME型の値に指定した日数を簡単に追加できます。この記事では、実際にテーブルを作成し、日時フィールドに日数を加算するまでの手順を具体例とともに解説します。 1. テーブルの作成 まず、DATETIME型のカラムを持つテーブルを作成します。 mysql> create table DemoTable1871 ( ArrivalDate datetime ); Query OK, 0
-
MySQLで日付形式を変換する方法|STR_TO_DATE()関数の使い方を解説
MySQLでは、VARCHAR型などで保存された文字列の日付データを、正しい日付・時刻形式に変換したいケースがよくあります。そんなときに活躍するのが STR_TO_DATE() 関数です。この記事では、実際のSQL例とともに具体的な使い方を解説します。サンプルテーブルの作成まず、日付を文字列として格納するテーブルを作成します。mysql> create table DemoTable2010 ( DueDate varchar(20) ); Query OK, 0 rows affected (0.68 sec)テストデータの挿入INSERT文を使って、「日/月/年 時:分:秒」