牛骨文教育服务平台(让学习变的简单)
博文笔记

mysql时间属性之时间戳和datetime之间的转换

创建时间:2018-11-06 投稿人: 浏览次数:2401
版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/bianlitongcn/article/details/83781177

一、datetime转换为时间戳

    方案一:强制转换字段类型

use`nec`;
SET SQL_SAFE_UPDATES=0;
ALTER TABLE `usr_user_info` CHANGE COLUMN `registerTime` `registerTime` BIGINT(20) NOT NULL COMMENT "注册时间" ,
ALTER TABLE `usr_user_info` CHANGE COLUMN `lastLoginTime` `lastLoginTime` BIGINT(20) NULL DEFAULT NULL COMMENT "最后登录时间" ;
UPDATE `usr_user_info` SET  `lastLoginTime` = unix_timestamp(`lastLoginTime`);
UPDATE `usr_user_info` SET  `registerTime` = unix_timestamp(`registerTime`);

方案二:增加临时列

--
-- table alter for usr_user_info
--
/*增加字段*/
use `nec`;
ALTER TABLE `usr_user_info` ADD COLUMN tempRegisterTime BIGINT(20) NULL ;
ALTER TABLE `usr_user_info`  ADD COLUMN tempLastLoginTime BIGINT(20) NULL ;

/*进行时间转化,并复制列*/
UPDATE  usr_user_info SET tempRegisterTime=unix_timestamp(registerTime);
UPDATE  usr_user_info SET tempLastLoginTime=unix_timestamp(lastLoginTime);

/*删除原有字段*/
ALTER TABLE usr_user_info
    DROP registerTime,DROP lastLoginTime;

/*更新临时字段名称*/
ALTER TABLE usr_user_info CHANGE tempRegisterTime registerTime BIGINT(20) NOT NULL  COMMENT "注册时间";
ALTER TABLE usr_user_info CHANGE tempLastLoginTime lastLoginTime BIGINT(20)  COMMENT "最近登录时间";

二、时间戳转换成datetime

     这个谷歌一堆教程,主要涉及"FROM_UNIXTIME(registerTime )"这个转换函数

声明:该文观点仅代表作者本人,牛骨文系教育信息发布平台,牛骨文仅提供信息存储空间服务。