如何在MySQL中将
1300464000
转换为2011-03-18 16:00:00
?1300464000
转换为2011-03-18 16:00:00
?在 MySQL 中使用 FROM_UNIXTIME()
函数
请记住,如果您正在使用以毫秒为单位存储的框架(例如 Java 的时间戳),则必须除以 1000才能获得正确的 Unix 时间(以秒为单位)。
SELECT from_unixtime( TIMESTAMP( "2011-12-01", "22:01:23.048" ) )
无法工作? - Janus TroelsenSELECT from_unixtime( unix_timestamp(TIMESTAMP( "2011-12-01", "22:01:23.048" ) ) )
可以使用。TIMESTAMP()
不会返回整数值。 - cnvzmxcvmcxDATE_FORMAT(FROM_UNIXTIME(`orderdate`), '%Y-%m-%d %H:%i:%s') as "Date" FROM `orders`
如果给定的日期是编码格式,例如1300464000
,那么这是最终解决方案。
DATE_FORMAT(FROM_UNIXTIME(\
orderdate`), '%d-%m-%Y %H:%i:%s') as "Date" FROM `orders` `意思是将 Unix 时间戳 orderdate
转换成日期格式,并将其以特定的形式显示在查询结果中,格式为 dd-mm-yyyy hh:mm:ss
,并将该列命名为 "Date"。此查询语句适用于订单表格中的数据。 - JNP Web Developerorderdate
), '%Y-%m-%d')作为"日期"从orders
中查询将是最终解决方案:D - Kyle回答Janus Troelsen的评论
SELECT from_unixtime( UNIX_TIMESTAMP( "2011-12-01 22:01:23.048" ) )
TIMESTAMP函数返回日期或日期时间,而不是时间戳。而UNIX_TIMESTAMP返回Unix时间戳。
您可以使用
select from_unixtime(1300464000,"%Y-%m-%d %h %i %s") from table;
H
而不是 OP 想要的 h
,表示24小时制时间格式。 - KevinSELECT from_unixtime(UNIX_TIMESTAMP(field_with_timestamp)) FROM "your_table"
这对我有用。