2012-12-08 27 views
0

我有一列timestamp類型。我想獲得最新的時間可用於特定的條件,並添加1分鐘。如果條件導致零記錄,我得到NULL。爲了正確操作它,我需要將此NULL視爲默認/最小/零時間戳。我不確定在SQL查詢中如何做到這一點(不在字段定義中)。我試過這個:如何在MySQL查詢中定義時間戳值?

SELECT COALESCE((SELECT MAX(`time`) FROM `table` WHERE false), 0) + INTERVAL 1 MINUTE 
SELECT COALESCE((SELECT MAX(`time`) FROM `table` WHERE false), TIMESTAMP('0000-00-00 00:00:00')) + INTERVAL 1 MINUTE 
SELECT COALESCE((SELECT MAX(`time`) FROM `table` WHERE false), TIMESTAMP('1970-01-01 00:00:00')) + INTERVAL 1 MINUTE 

全部返回NULL。使用TIMESTAMPADD和UNIX_TIMESTAMP也沒有得到任何效果。

回答

0

據我記得添加時間戳和日期總是產生空,即使SELECT UNIX_TIMESTAMP() + interval 1 minute返回NULL。我想你需要做的是改變+INTERVAL 1 MINUTE+60(秒)

0

SELECT MAX(time)FROM table WHERE假

對我來說,這似乎是因爲 「WHERE假」 會壞聲明從不返回任何東西(即NULL)......你是否錯過了「WHERE column = false」這樣的列?