DATEDIFF nasıl kullanılır?

4 Cevap php

DATEDIFF nasıl kullanılır? Bunu nasıl çalışması yapabilirsiniz? ya da ben tamamen farklı DATEDIFF kullanmalıyım?

SELECT DATEDIFF('Started ','will_end') AS 'Duration' FROM my_table WHERE id = '110';

Ben iki tarih içinde kaç gün, cevap almak için deneyin.

I would like to get an aswer like:
Duration = 7 days;

Ben veritabanının bu tür var:

Started | will_end
2009-12-17 | 2009-12-24
2009-12-12 | 2009-12-26

4 Cevap

will_end ilk koymak, started saniye:

SELECT  DATEDIFF('2009-12-24', '2009-12-17') 

---
  7

Ayrıca, alan adları tek tırnak kaldırın:

SELECT  DATEDIFF(will_end, started) AS Duration
FROM    my_table
WHERE   id = 110

, Ya da ters tırnakların bunların yerine:

SELECT  DATEDIFF(`will_end`, `started`) AS `Duration`
FROM    `my_table`
WHERE   `id` = 110

Bir NULL sonuç alıyor musunuz? Eğer yerine sütun değerlerine göre DATEDIFF için 'Started ' ve 'will_end' dizeleri geçiyor demektir, sizin sorguda tek tırnak sütun isimleri var. Tek tırnak kaldırmayı deneyin ve bazı sonuçları görmek için başlayacak:

SELECT DATEDIFF(Started, will_end) AS Duration FROM my_table WHERE id = '110';

Bu bir negatif sonuç verecektir unutmayın. Olumlu bir sonuç almak için, sütunların sırasını ters:

SELECT DATEDIFF(will_end, Started) AS Duration FROM my_table WHERE id = '110';

sırasını değiştirin

DATEDIFF ('will_end', 'Başlangıç')

I think there are 3 parameter to be passed in DATEDIFF ( datepart , startdate , enddate )

so your code would be DATEDIFF ( dd , 'Started ','will_end' )

http://msdn.microsoft.com/en-us/library/ms189794.aspx