如何将时间戳转换为字符串
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
这有点奇怪。我需要将时间戳保存到 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