一、datetime转换为时间戳
方案一:强制转换字段类型
1 use`nec`;
2 SET SQL_SAFE_UPDATES=0;
3 ALTER TABLE `usr_user_info` CHANGE COLUMN `registerTime` `registerTime` BIGINT(20) NOT NULL COMMENT '注册时间' ,
4 ALTER TABLE `usr_user_info` CHANGE COLUMN `lastLoginTime` `lastLoginTime` BIGINT(20) NULL DEFAULT NULL COMMENT '最后登录时间' ;
5 UPDATE `usr_user_info` SET `lastLoginTime` = unix_timestamp(`lastLoginTime`);
6 UPDATE `usr_user_info` SET `registerTime` = unix_timestamp(`registerTime`);
方案二:增加临时列
1 --
2 -- table alter for usr_user_info
3 --
4 /*增加字段*/
5 use `nec`;
6 ALTER TABLE `usr_user_info` ADD COLUMN tempRegisterTime BIGINT(20) NULL ;
7 ALTER TABLE `usr_user_info` ADD COLUMN tempLastLoginTime BIGINT(20) NULL ;
8
9 /*进行时间转化,并复制列*/
10 UPDATE usr_user_info SET tempRegisterTime=unix_timestamp(registerTime);
11 UPDATE usr_user_info SET tempLastLoginTime=unix_timestamp(lastLoginTime);
12
13 /*删除原有字段*/
14 ALTER TABLE usr_user_info
15 DROP registerTime,DROP lastLoginTime;
16
17 /*更新临时字段名称*/
18 ALTER TABLE usr_user_info CHANGE tempRegisterTime registerTime BIGINT(20) NOT NULL COMMENT '注册时间';
19 ALTER TABLE usr_user_info CHANGE tempLastLoginTime lastLoginTime BIGINT(20) COMMENT '最近登录时间';
二、时间戳转换成datetime
这个谷歌一堆教程,主要涉及'FROM_UNIXTIME(registerTime )'这个转换函数,不仔细详述了