Mysql
 sql >> Teknologi Basis Data >  >> RDS >> Mysql

Cara Menambahkan Waktu ke Nilai Datetime di MySQL

Masalah:

Anda ingin menambahkan sejumlah waktu tertentu ke nilai datetime di database MySQL.

Contoh:

Basis data kami memiliki tabel bernama flight_schedule dengan data di kolom flight , aircraft , dan arrival_datetime .

penerbangan pesawat waktu_tanggal_kedatangan
EK10 L1201 20-04-2019 15:15:00
AY12 K2001 31-03-2019 20:10:00
LA105 F205 03-08-2019 11:15:00
LH30 K256 01-07-2019 12:47:00

Untuk setiap penerbangan, dapatkan kode penerbangan, kode pesawat, dan tanggal dan waktu kedatangan yang baru. Untuk menghitung new_arrival_datetime , kami akan menambahkan 2 jam 10 menit ke waktu saat ini untuk setiap kedatangan – sebanyak itulah penundaan penerbangan ini.

Solusi:

Kami akan menggunakan ADDTIME() fungsi. Inilah kueri yang akan Anda tulis:

SELECT flight,
       aircraft,
       ADDTIME(arrival_datetime, ‘2:10’) 
         AS new_arrival_datetime
FROM flight_schedule;

Berikut hasil querynya:

penerbangan pesawat waktu_kedatangan_baru
EK10 L1201 20-04-2019 17:25:00
AY12 K2001 31-03-2019 22:20:00
LA105 F205 03-08-2019 13:25:00
LH30 K256 01-07-2019 14:57:00

Diskusi:

Gunakan fungsi ADDTIME() jika Anda ingin memilih datetime baru dengan menambahkan waktu tertentu ke nilai datetime/timestamp/time.

Fungsi ini membutuhkan dua argumen. Argumen pertama adalah datetime/time yang kita tambahkan waktu; ini bisa berupa ekspresi yang mengembalikan nilai waktu/tanggal-waktu/stempel waktu atau nama kolom waktu/tanggal-waktu/cap waktu. Dalam contoh kami, kami menggunakan arrival_datetime kolom, yang merupakan datetime tipe data.

Argumen kedua adalah string yang berisi jumlah waktu untuk ditambahkan ke argumen pertama (dalam contoh kita, '2:10', atau 2 jam 10 menit).

Anda juga dapat menambahkan pecahan detik dan bahkan hari ke nilai tanggal/waktu. Kueri di bawah ini menambahkan 3 hari, 1 jam, 1 menit, 1 detik, dan 111 detik pecahan ke tanggal dan waktu:

SELECT ADDTIME('2019-02-05 10:12:11', '3 1:1:1.111'); 

Ini mengembalikan:

2019-02-08 11:13:12.111000

ADDTIME() mengembalikan string dengan waktu baru. Dalam contoh kami, waktu kedatangan baru untuk penerbangan ‘EK10’ adalah '2019-04-20 17:25:00' – dua jam sepuluh menit setelah tanggal aslinya

‘2019-04-20 15:15:00’.   

  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Bagaimana cara mengimpor file .sql di database mysql menggunakan PHP?

  2. Fungsi MySQL ATAN() – Mengembalikan Tangen Busur dari Nilai (atau Nilai)

  3. Cara Membuat Peringkat Di Atas Partisi di MySQL

  4. Menyebarkan Database Relasional MySQL di Ubuntu 12.04 (Trenggiling Tepat)

  5. Permintaan Kembalikan MySQL