首先在数据库中,我建立了一张测试表
DROP TABLE IF EXISTS `testint`;
CREATE TABLE `testint` (
`id` int(11) unsigned NOT NULL AUTO_INCREMENT,
`int` int(4) DEFAULT NULL,
`name` varchar(10) DEFAULT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
LOCK TABLES `testint` WRITE;
/*!40000 ALTER TABLE `testint` DISABLE KEYS */;
INSERT INTO `testint` (`id`, `int`, `name`)
VALUES
(1,1156219870,'a'),
(2,1156219880,'b'),
(3,1156219890,'c');
/*!40000 ALTER TABLE `testint` ENABLE KEYS */;
UNLOCK TABLES;
这时候,我们要查询这些数据对吧
select * from testint
很简单,但是我们看不懂int字段的所代表的时间对吧,接下来,我们就要用FROM_UNIXTIME转换了:
select FROM_UNIXTIME('int') as time ,name from testint
现在我们可以看到时间了,但是有个问题,时间显示的是:1970-01-01 08:00:00.000000
好多0啊,怎么办?写代码时候不是有format吗?一样,FROM_UNIXTIME也有:
select FROM_UNIXTIME('int','%Y-%m-%d %H:%i:%S'),name from testint
这样1970-01-01 08:00:00的时间我们就一目了然了
小技巧!
下面是java把时间转化成这种int的说明,可以参考:
http://www.360doc.com/content/15/0618/18/22818059_479037549.shtml