这有点奇怪。我需要将时间戳保存到varchar(15)中,该列定义为varchar(15)并存储实际的数字时间戳。
所以我有类似" 2015-03-01 20:00:00"它需要保存为" 1427725068"。有没有办法直接在mysql中这样做?感谢
答案 0 :(得分:1)
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 |
+------------+
答案 1 :(得分:0)
这是小提琴: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