我需要删除分钟和秒的时间存储在mysql的时间数据类型。所以12:13:14会变成12:00:00等等。
目前我有以下选择:
SET @t = TIME(NOW());
SELECT
@t
, TIME(TIME_FORMAT(@t, '%H:00:00')) AS t1
, TIME(CONCAT(HOUR(@t), ':00:00')) AS t2
, SEC_TO_TIME(60 * 60 * FLOOR(TIME_TO_SEC(@t) / 60 / 60)) AS t3
, TIME(10000 * HOUR(@t)) AS t4
;
代码将在触发器中同时执行多行(不是太多,可能是几百行)。
我的问题:
我错过什么了吗?
你认为哪种方法最有效?
谢谢。
更新:看起来我错过了maketime函数,所以解决方法是 MAKETIME(HOUR(@t), 0, 0)
p、 我知道最好的办法就是把小时数存储为不带签名的时间。不幸的是,我现在不得不把它作为时间来存储。
暂无答案!
目前还没有任何答案,快来回答吧!