Date_ADD() 関数を使用して、MySQL で日付と時刻を追加する
-
MySQL の
DATE_ADD()
メソッド - テーブルを作成し、MySQL にデータを挿入する
-
DATE_ADD()
関数を使用して MySQL で日数を追加する -
DATE_ADD()
関数を使用して MySQL で月と年を加算する -
DATE_ADD()
関数を使用して、MySQL で時間、分、および秒を追加する -
DATE_ADD()
関数を使用して、MySQL で日付と時刻を加算または減算する
このチュートリアルでは、DATE_ADD()
関数を使用して MySQL で日付と時刻を追加する方法を示します。 日、年、月、時間を個別に加算または短縮し、2つを組み合わせる方法 (たとえば、日と時間) を学習します。
MySQL の DATE_ADD()
メソッド
DATE_ADD()
メソッドを使用して、間隔を DATETIME
または DATE
タイプの値に追加できます。 2つの引数を受け入れます。
最初の引数は start_date
で、開始日です。 DATE
/DATETIME
タイプにすることができます。
2 番目の引数は INTERVAL expression unit
です。これは、指定された start_date
の値に追加する必要がある間隔値です。 このメソッドで使用できる ユニット のリストを見つけることができます。
最初の引数が DATETIME
の場合、または間隔値に時間要素 (時、分、または秒) が含まれている場合は、DATETIME
値を返します。 それ以外の場合は文字列を返します。
テーブルを作成し、MySQL にデータを挿入する
DATE_ADD()
メソッドを学ぶために、id
、country_name
、および startDate
列を持つ trips
という名前のテーブルを作成しましょう。ここで、startDate
は DATETIME
型です。 また、trips
テーブルを作成し、以下に示すランダム データを入力することもできます。
CREATE TABLE trips(
id INT NOT NULL AUTO_INCREMENT,
country_name VARCHAR(45) NOT NULL,
startDate DATETIME NOT NULL,
PRIMARY KEY (id));
INSERT INTO trips (country_name, startDate) VALUES
('Pakistan', '2019-01-27 01:23:34'),
('USA', '2019-02-22 12:34:05'),
('Turkey', '2020-05-14 08:03:02'),
('India', '2020-01-21 11:20:04');
SELECT * FROM trips;
出力:
| id | country_name | startDate |
| ---- | ------------ | ------------------- |
| 1 | Pakistan | 2019-01-27 01:23:34 |
| 2 | USA | 2019-02-22 12:34:05 |
| 3 | Turkey | 2020-05-14 08:03:02 |
| 4 | India | 2020-01-21 11:20:04 |
DATE_ADD()
関数を使用して MySQL で日数を追加する
trips
テーブルの startDate
に 2 日を追加します。ここで、id
は 3 です。
コード例:
UPDATE trips
SET startDate = DATE_ADD(startDate , INTERVAL 2 DAY)
WHERE id = 3;
出力:
| id | country_name | startDate |
| ---- | ------------ | ------------------- |
| 1 | Pakistan | 2019-01-27 01:23:34 |
| 2 | USA | 2019-02-22 12:34:05 |
| 3 | Turkey | 2020-05-16 08:03:02 |
| 4 | India | 2020-01-21 11:20:04 |
次のように日を引くこともできます。
コード例:
UPDATE trips
SET startDate = DATE_ADD(startDate , INTERVAL -2 DAY)
WHERE id = 1;
出力:
| id | country_name | startDate |
| ---- | ------------ | ------------------- |
| 1 | Pakistan | 2019-01-25 01:23:34 |
| 2 | USA | 2019-02-22 12:34:05 |
| 3 | Turkey | 2020-05-16 08:03:02 |
| 4 | India | 2020-01-21 11:20:04 |
DATE_ADD()
関数を使用して MySQL で月と年を加算する
日と同様に、年と月を追加することもできます。 年または月をマイナスするには、マイナス (-ve) 記号を使用して式を記述します。
コード例:
#add month
UPDATE trips
SET startDate = DATE_ADD(startDate , INTERVAL 1 MONTH)
WHERE id = 1;
#add year
UPDATE trips
SET startDate = DATE_ADD(startDate , INTERVAL 1 YEAR)
WHERE id = 1;
出力:
| id | country_name | startDate |
| ---- | ------------ | ------------------- |
| 1 | Pakistan | 2020-02-25 01:23:34 |
| 2 | USA | 2019-02-22 12:34:05 |
| 3 | Turkey | 2020-05-16 08:03:02 |
| 4 | India | 2020-01-21 11:20:04 |
DATE_ADD()
関数を使用して、MySQL で時間、分、および秒を追加する
trips
テーブルの startDate
に 1 時間、分、秒を追加します。ここで、id
は 4 です。
コード例:
#add hours
UPDATE trips
SET startDate = DATE_ADD(startDate , INTERVAL 1 HOUR)
WHERE id = 4;
#add minutes
UPDATE trips
SET startDate = DATE_ADD(startDate , INTERVAL 1 MINUTE)
WHERE id = 4;
#add seconds
UPDATE trips
SET startDate = DATE_ADD(startDate , INTERVAL 1 SECOND)
WHERE id = 4;
出力:
| id | country_name | startDate |
| ---- | ------------ | ------------------- |
| 1 | Pakistan | 2020-02-25 01:23:34 |
| 2 | USA | 2019-02-22 12:34:05 |
| 3 | Turkey | 2020-05-16 08:03:02 |
| 4 | India | 2020-01-21 12:21:05 |
DATE_ADD()
関数を使用して、MySQL で日付と時刻を加算または減算する
trips
テーブルの startDate
に 2 時間 2 分を追加します。ここで、id
は 3 です。
#add hours and minutes
UPDATE trips
SET startDate = DATE_ADD(startDate , INTERVAL '2:2' HOUR_MINUTE)
WHERE id = 3;
出力:
| id | country_name | startDate |
| ---- | ------------ | ------------------- |
| 1 | Pakistan | 2020-02-25 01:23:34 |
| 2 | USA | 2019-02-22 12:34:05 |
| 3 | Turkey | 2020-05-16 10:05:02 |
| 4 | India | 2020-01-21 12:21:05 |
同様に、DAY_HOUR
、YEAR_MONTH
、および more を使用できます。