原数据:Wed Aug 01 04:41:37 CST 2018
excel公式:=DATE(MID(F2,25,4),MONTH(MID(F2,5,3)&1),MID(F2,9,2))+TIME(MID(F2,12,2),MID(F2,15,2),MID(F2,18,2))
//MID函数:F2为原数据位置,25为要转换的数据的首字符所在位置,4为要转换的字符长度,MID只是截取字符串片段,不改变值
DATE函数:三个参数为年月日
MONTH函数可以把英文月份转为数字
最后需要给目标单元格设置自定义时间日期格式
转化后效果如下:
处理的目的是导入数据库,至于转化为时间戳可以在excel中转,也可以在数据库中转,比较简单,以sqlserver为例,其他请百度
SELECT DATEADD(S,1160701488 + 8 * 3600,'1970-01-01 00:00:00') --时间戳转换成普通时间
SELECT DATEDIFF(S,'1970-01-01 00:00:00', '2006-10-13 09:04:48.000') - 8 * 3600 --普通时间转换成时间戳
补充:数据迁移往往数据量较大,上面公式是针对一个单元格,大家都晓得变成十字后往下拉就可以了,对于大数据还是变成十字后双击,直接可向下填充更有效率。