我有一个这样的简单表:
CREATE TABLE `users` (
`id` int(11) unsigned NOT NULL AUTO_INCREMENT,
`created` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
`username` varchar(16) DEFAULT NULL,
`password` varchar(16) DEFAULT NULL
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
每当我插入记录时,创建的字段应自动填充当前时间戳。但是,出于某种原因,我一直看到插入的时间戳为12小时格式。当我执行select created from users limit 1;
之类的操作时,我会得到2012-04-30 11:34:05
当我执行select current_timestamp
之类的操作时,我会获得24小时格式2012-04-30 23:34:05
当我将它转换为unix_time并要求php将其转换为PST时间时,它是正确的。但是我想让这个列以24小时格式显示而不需要任何时间操作。有人可以帮忙吗?
答案 0 :(得分:3)
正如米奇在上面的评论中所说,似乎只是格式化SELECT
上的输出。试试DATE_FORMAT
:
SELECT DATE_FORMAT(created, '%Y-%c-%e %H:%i:%s') FROM users