2011-10-20 85 views
1

我被困在獲取mySql中兩個日期之間的剩餘天數,小時數和分鐘數。使用mySql獲取剩餘天數,小時數和分鐘

我有一個到期日期,我想比較它與當前日期時間,並希望得到天,小時和分鐘。

+1

[你能告訴我們什麼到目前爲止,你沒試過嗎?] – marnir

+2

http://dev.mysql.com/doc/refman/5.5/en/date-and-time-functions.html#function_datediff – danihp

+0

有天,小時和分鐘表示在DateTime中。具體告訴我們您要渲染的人類可讀格式,您到目前爲止所嘗試的內容以及它的結果有何不同。 –

回答

5

This stackoverflow link可能會幫助你。有很多方法可以計算兩個日期之間的差異,並且您不必在完整的SQL中執行此操作。

[編輯]

我已經發現了SQL的解決方案......

SELECT TIMESTAMPDIFF(DAY,NOW(),'2012-01-01') AS DAY, 
     TIMESTAMPDIFF(HOUR,NOW(),'2012-01-01')-TIMESTAMPDIFF(DAY,NOW(),'2012-01-01')*24 AS HOUR, 
     TIMESTAMPDIFF(MINUTE,NOW(),'2012-01-01')-TIMESTAMPDIFF(HOUR,NOW(),'2012-01-01')*60 AS MINUTE; 
+0

鏈接是答案嗎? –

+0

我同意這不是一個答案,但這個鏈接對待類似的問題,我認爲它可以幫助他。如果我是他,我不會試圖在SQL中這樣做...這就是爲什麼我說有很多其他方式來解決他的問題的原因(programmaticaly) – Fred

+0

最好作爲評論然後:) –

2

你應該嘗試這兩個值之間(例如,作爲時間戳)的差異,格式化日期你的申請。您可以使用NOW()獲取當前時間戳。 如果你想讓MySQL格式化你的數據,你應該看看手冊。有幾個功能。