首页 > 数据库 >Mysql日期类型剖析

Mysql日期类型剖析

时间:2022-10-25 10:07:06浏览次数:50  
标签:12 ## TIMESTAMP 20210413 剖析 日期 Mysql SELECT


微信公众号:IT邦德

Mysql日期类型剖析_微信公众号


说明:以下案例为8.0.23环境下

一、日期和时间类型
DATE:YYYY-MM-DD 日期值
TIME:HH:MM:SS 时间值或持续时间
YEAR:YYYY 年份值
DATETIME:YYYY-MM-DD HH:MM:SS 混合日期和时间值
TIMESTAMP:YYYYMMDDHHMMSS 混合日期和时间值,时间戳

二、日期与字符串转换
2.1 时间转字符串

DATE_FORMAT(日期,格式字符串)
SELECT DATE_FORMAT(NOW(), '%Y-%m-%d %H:%i:%s');

附日期格式如下:

%M 月名字(January……December)
%W 星期名字(Sunday……Saturday)
%D 有英语前缀的月份的日期(1st, 2nd, 3rd, 等等。)
%Y 年, 数字, 4 位
%y 年, 数字, 2 位
%a 缩写的星期名字(Sun……Sat)
%d 月份中的天数, 数字(00……31)
%e 月份中的天数, 数字(0……31)
%m 月, 数字(01……12)
%c 月, 数字(1……12)
%b 缩写的月份名字(Jan……Dec)
%j 一年中的天数(001……366)
%H 小时(00……23)
%k 小时(0……23)
%h 小时(01……12)
%I 小时(01……12)
%i 分钟, 数字(00……59)
%r 时间,12 小时(hh:mm:ss [AP]M)
%T 时间,24 小时(hh:mm:ss)
%S 秒(00……59)
%s 秒(00……59)
%p AM或PM
%w 一个星期中的天数(0=Sunday ……6=Saturday )
%U 星期(0……52), 这里星期天是星期的第一天
%u 星期(0……52), 这里星期一是星期的第一

2.2 字符串转时间

STR_TO_DATE(字符串,时间格式)
SELECT STR_TO_DATE('2021-04-12 16:01:45', '%Y-%m-%d %H:%i:%s');

2.3 时间戳

CREATE TABLE test (id int,
##在创建新记录和修改现有记录的时候都对这个数据列刷新
date1 TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
##在创建新记录的时候把这个字段设置为当前时间,但以后修改时,不再刷新它
date2 TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
date3 TIMESTAMP
)

insert into test VALUES(1,now(),'20210413000406');
update test set id = 2 where id = 1;

三、日期常用函数大全

##返回本周第几天 (表示,记住:星期天=1,星期一=2, ... 星期六=7)
SELECT DAYOFWEEK('20210413')
##返回当年第几天
SELECT DAYOFYEAR('20210413')
##返回小时
SELECT HOUR(now())
##当index为1时,表示一周的第一天是周一
SELECT WEEK('20210413', 1)
##返回季度
SELECT QUARTER('20210413')
##返回MONTH
SELECT MONTH('20210413')
##返回YEAR
SELECT YEAR('20210413')


标签:12,##,TIMESTAMP,20210413,剖析,日期,Mysql,SELECT
From: https://blog.51cto.com/u_11682417/5793982

相关文章

  • MySQL 临时表
    微信公众号:IT邦德MySQL临时表在我们需要保存一些临时数据时是非常有用的。临时表只在当前连接可见,当关闭连接时,Mysql会自动删除表并释放所有空间。临时表在MySQL3.23......
  • Mysql客户端工具
    微信公众号:IT邦德1.客户端工具2.Mysqlworkbench官网:https://dev.mysql.com/downloads/workbench/3.phpmyadminphpMyAdmin,它是用PHP脚本写的MySQL数据库的管理软件......
  • MySQL8.0新特性抢先看,性能又双叒提升了,真香啊
    ......
  • Linux下Mysql数据库名及表名区分大小写设置
    微信公众号:IT邦德在MySQL中,一个数据库会对应一个文件夹,数据库里的表会则以文件的方式存放在文件夹内,所以,操作系统对大小写的敏感性决定了数据库和表的大小写敏感。Linux......
  • MySQL 5.7临时表空间如何玩才能不掉坑里详解
    转载自:https://www.jb51.net/article/147268.htmMySQL5.7临时表空间如何玩才能不掉坑里详解导读MySQL5.7的目标是成为发布以来最安全的MySQL服务器,其在SSL/TLS和全面......
  • 记录一下docker的mysql容器exited(1)无法正常启动的解决思路
    一开始应该查看日志,该命令为:dockerlogs容器id查看到报错[ERROR][Entrypoint]:DatabaseisuninitializedandpasswordoptionisnotspecifiedYouneedtospecify......
  • Struts2-3概述与MVC模式深度剖析
    Struts深入浅出​​​Struts框架的优势​​​MVC的概念​MVC结构图MVC处理过程​MVC的优点​MVC的适用范围​JSP是一个独立的、自主完成所有任务......
  • mysql数据库基本命令与基础语法
    以mysql8.0.31为例1、查看mysql服务状态servicemysqldstatus2、停止mysql服务servicemysqldstop3、启动mysql服务servicemysqldstart......
  • Struts2-3概述与MVC模式深度剖析
    Struts深入浅出​​​Struts框架的优势​​​MVC的概念​MVC结构图MVC处理过程​MVC的优点​MVC的适用范围​JSP是一个独立的、自主完成所有任务......
  • JDK8-日期和时间API
    日期和时间是非常复杂的一个东西,因为语言文化和时区等等原因,时间又是一个非常简单的东西,因为他是人类生活的共工基础,所以长时间来形成了非常成熟的API,直接调用感觉不到复杂......