MySQL'de iki tarih arasındaki farkı hesapla


Yanıtlar:


296

TIMESTAMPDIFFMySQL işlevini KULLANIN . Örneğin, şunları kullanabilirsiniz:

SELECT TIMESTAMPDIFF(SECOND, '2012-06-06 13:13:55', '2012-06-06 15:20:18')

Sizin durumunuzda, TIMSTAMPDIFFişlevin üçüncü parametresi geçerli giriş zamanıdır ( NOW()). İkinci parametre, veritabanında bulunan son giriş zamanı olacaktır.


Bu son giriş hakkını güncellemek için ?? ne istiyorum stackoverflow gibi soru 2s önce gönderildi, 30s önce, 2 dakika önce .. vb Ben benzer bir işlevsellik istiyorum. Örneğin, REQUESTS (id, mesaj, zaman damgası) yazan bir tablo var. depolama sırasında zaman damgası ŞİMDİ () olacaktır. Ben bir sorgu çalıştırırken, istek, * ID, mesaj ve ne kadar geri isteği gönderildi görüntülenmesi gerektiğini bu değeri görüntülemek yerine isteklerinden * seçin.
Devesh Agrawal

1
Bir SELECT TIMESTAMPDIFF (SECOND, NOW (), 'sorgusunu yürütürken, id =' 2 '' olan isteklerden lastLoginTime öğesini seçin. NULL döndürüyor. Neden herhangi bir fikir ??
Devesh Agrawal

id = '2' isteklerinden select lastLoginTime öğesinin çıktısı nedir?
FSP

TIMESTAMPDIFF SEÇ (İKİNCİ, ŞİMDİ (), '2012-06-06 08:07:36'); Bunu dene!
FSP

Evet çalışıyor, ama tablodan ikinci parametreyi getirmeniz gerekiyor. Bunu nasıl başarabilirim? Infact ben iç içe sorgu önlemek istiyorum. Herhangi bir fikir?
Devesh Agrawal

3

mantıkla ilgili iki sentim:

sözdizimi "eski tarih" -: "yeni tarih", yani:

SELECT TIMESTAMPDIFF(SECOND, '2018-11-15 15:00:00', '2018-11-15 15:00:30')

30 verir,

SELECT TIMESTAMPDIFF(SECOND, '2018-11-15 15:00:55', '2018-11-15 15:00:15')

verir: -40


2

Başlangıç ​​ve bitiş tarihleriniz farklı günlerde ise TIMEDIFF kullanın.

SELECT TIMEDIFF(datetime1,datetime2)

datetime1> datetime2 ise

SELECT TIMEDIFF("2019-02-20 23:46:00","2019-02-19 23:45:00")

verir: 24:01:00

ve datetime1 <datetime2

SELECT TIMEDIFF("2019-02-19 23:45:00","2019-02-20 23:46:00")

verir: -24: 01: 00


Not, sadece 839 saate kadar olan tarihlerle başa çıkabilir
Caius Jard
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.