1. STR_TO_DATE(str,format) 字符串转date
2.DATE_FORMAT(date,format) date转字符串
mysql中比较日期是可以直接字符串比较的
created_at >= '2019-04-21 10:51:50'
datatime和timestamp 的区别
1.DATETIME的默认值为null;TIMESTAMP的字段默认不为空(not null),默认值为当前时间(CURRENT_TIMESTAMP),如果不做特殊处理,并且update语句中没有指定该列的更新值,则默认更新为当前时间。可以取消更新数据时自动更新当前时间
可以实现,插入数据时更新create_at的值,更新时更新update_at的值,如下图例子,执行插入后又执行更新,updata_at自动更新时间.
2.DATETIME使用8字节的存储空间,TIMESTAMP的存储空间为4字节。因此,TIMESTAMP比DATETIME的空间利用率更高。
3.
两者所能存储的时间范围不一样
timestamp所能存储的时间范围为:’1970-01-01 00:00:01.000000’ 到 ‘2038-01-19 03:14:07.999999’
datetime所能存储的时间范围为:’1000-01-01 00:00:00.000000’ 到 ‘9999-12-31 23:59:59.999999’
4.两者的存储方式不一样 ,对于TIMESTAMP,它把客户端插入的时间从当前时区转化为UTC(世界标准时间)进行存储。查询时,将其又转化为客户端当前时区进行返回。而对于DATETIME,不做任何改变,基本上是原样输入和输出。