如何将时间戳转换为字符串

How to convert a timestamp to a string

这有点奇怪。我需要将时间戳保存到 varchar(15) 中,该列定义为 varchar(15),它存储实际的数字时间戳。

所以我有类似“2015-03-01 20:00:00”的内容,需要将其保存为“1427725068”。 mysql 有什么办法可以直接这样做吗?谢谢

varchar 日期不是真实日期,您需要在进行任何进一步操作之前将它们转换为真实日期。函数是 str_to_date 然后在它上面使用 unix_timestamp 得到的值是

mysql> select unix_timestamp(str_to_date('2015-03-01 20:00:00','%Y-%m-%d %H:%i:%s')) as utime;
+------------+
| utime      |
+------------+
| 1425220200 |
+------------+

这里是fiddle:http://sqlfiddle.com/#!2/dd7f40/1

create table table1 (id int, timestamp_varchar varchar(15));

insert into table1 values(1,UNIX_TIMESTAMP('2015-03-01 20:00:00'));

select * from table1;

输出:

1, 1425258000