2014-06-27 46 views
1

我想插入/更新數據到當前時間的表中,但我希望秒數爲0,例如,'2014-06-27 23:36:' 。我如何實現這一目標?mysql當前時間爲0秒

我認爲MAKETIME()可以以某種方式參與,但我真的不知道怎麼樣。

CURDATE() + INTERVAL HOUR() HOUR + INTERVAL MINUTE() MINUTE遺憾的是不工作的,這並不奇怪。

編輯:最終的解決方案 - DATE_FORMAT(CURTIME(), '%Y-%m-%d %H:%i:00')

回答

2
mysql> select date_format(current_timestamp(), '%Y-%m-%d %H:%i:00') as ts_zero_seconds; 
+---------------------+ 
| ts_zero_seconds  | 
+---------------------+ 
| 2014-06-27 02:06:00 | 
+---------------------+ 
+0

這應該是'%Y-%m-%d%H:%i:00'。我不做12個小時。 – jurchiks

+0

夠公平的,我編輯了上面的內容。 –

2

你的點子應該與工作參數的功能:

CURDATE() + INTERVAL HOUR(now()) HOUR + INTERVAL MINUTE(now()) MINUTE 
+0

嗯,可笑的,因爲它是,它的工作原理,謝謝。儘管我可能會採用@Bill Karwin的解決方案,但如果我用'CURTIME()'替換'CURRENT_TIMESTAMP()',它會更短,它的工作原理非常少,我只需要它。 – jurchiks

+1

作爲一個說明,比爾的解決方案返回一個字符串。這個解決方案返回一個日期時間,這似乎是問題所要求的。 –

+0

它用於插入日期時間列中的數據庫。它接受字符串。 – jurchiks