mysql中格式化日期详解

MySQL中格式化日期详解

MySQL中,使用DATE_FORMAT()函数能够将日期、时间类型的数据格式化为我们需要的字符串格式。

语法

DATE_FORMAT(date,format)

其中,date为MySQL中日期、时间类型的字段或表达式,format为日期、时间格式字符串。

格式化语法

格式符号 含义
%Y 四位数字的完整年份
%y 两位数字的年份
%m 数字表示的月份(有前导0)
%c 数字表示的月份(没有前导0)
%d 月份中的第几天(有前导0)
%e 月份中的第几天(无前导0)
%H 小时(24小时制,有前导0)
%k 小时(24小时制,无前导0)
%h 小时(12小时制,有前导0)
%l 小时(12小时制,无前导0)
%i 分钟(有前导0)
%s 秒(有前导0)
%p AM或PM
%w 数字表示的星期几(0表示星期天,6表示星期六)
%a 缩写表示的星期几(Sun-Sat)
%W 完整表示的星期几(Sunday-Saturday)
%b,%h 缩写表示的月份(Jan-Dec)
%M 完整表示的月份(January-December)
%cst%Z 区域时间
%Y-%m-%d 年-月-日
%Y-%m-%d %H:%i 年-月-日 时:分
%Y-%m-%d %T 年-月-日 时:分:秒
%Y/%m/%d 年/月/日
%d.%m.%Y 日.月.年

示例

下面是两个示例,我们假设有一个表t,其中有一个字段是birthday,类型为DATE类型。

示例1

我们需要将birthday字段按照年-月-日的格式输出,可以使用如下SQL语句:

SELECT DATE_FORMAT(birthday,'%Y-%m-%d') as birthday FROM t;

输出结果如下:

birthday
1990-01-01
1991-02-02
1992-03-03
...

示例2

我们需要在birthday值的基础上增加年龄字段的输出,前面仍然是年-月-日的时间格式,后面是年龄数值,可以使用如下SQL语句:

SELECT CONCAT(DATE_FORMAT(birthday,'%Y-%m-%d'),' ',YEAR(CURDATE())-YEAR(birthday)) AS birthday FROM t;

输出结果类似如下:

birthday
1990-01-01 31
1991-02-02 30
1992-03-03 29
...

总结

DATE_FORMAT()函数是MySQL中日期、时间格式化的重要函数,其格式符号构成了丰富的日期、时间格式化语法。使用DATE_FORMAT()函数能够帮助我们将日期、时间类型的数据转换为我们所需要的字符串。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:mysql中格式化日期详解 - Python技术站

(0)
上一篇 2023年5月22日
下一篇 2023年5月22日

相关文章

  • MySQL中把varchar类型转为date类型方法详解

    MySQL中把varchar类型转为date类型方法详解 在 MySQL 中,我们可以通过 STR_TO_DATE() 函数将 varchar 类型的数据转换为 date 类型。这个函数的语法如下: STR_TO_DATE(string, format) 其中,string 表示需要转换的字符串,format 表示字符串的格式。 一、转换格式化字符串为日期 …

    database 2023年5月22日
    00
  • MySQL导出所有Index和约束的方法

    MySQL是一个常用的关系型数据库管理系统。在实际的开发中,为了避免数据的重复、不一致等问题,我们会定义Index和约束。但有时我们需要将这些Index和约束导出到其他数据库中,这时我们就需要导出这些Index和约束的定义。 下面是MySQL导出所有Index和约束的方法: 1. 使用SHOW CREATE TABLE命令 使用SHOW CREATE TAB…

    database 2023年5月22日
    00
  • Docker部署搭建WebDav服务的详细过程

    下面就为您详细讲解Docker部署搭建WebDav服务的完整攻略。 Docker部署搭建WebDav服务攻略 1. 为什么要使用Docker 在介绍如何使用Docker搭建WebDav服务之前,我们需要知道Docker是什么以及它在WebDav部署中的优势。 Docker是一款轻量级的虚拟化容器技术,可以在不同的操作系统上运行,不必担心不同操作系统之间的差异…

    database 2023年5月18日
    00
  • 我又和redis超时杠上了

    身为程序员,排查问题的能力很重要,本文将展现一次自身实际开发中的遇到问题时的排查经历,排错就像侦探探案的过程,逐步抽丝剥茧,从而看到现象背后的本质问题。 我又和redis超时杠上了 服务监控系列文章 服务监控系列视频 背景 经过上次redis超时排查,并联系云服务商解决之后,redis超时的现象好了一阵子,但是最近又有超时现象报出,但与上次不同的是,这次超时…

    Redis 2023年4月13日
    00
  • MySQL创建视图(CREATE VIEW)

    MySQL中的视图是一个虚拟表,其内容基于 SELECT 语句定义,可以被用户查询。视图使得我们可以简化复杂的查询和抽象复杂的数据结构,从而提高数据查询和管理的效率。 创建视图的基本语法如下: CREATE VIEW view_name AS SELECT column1, column2, … FROM table WHERE condition; 其…

    MySQL 2023年3月10日
    00
  • MySQL与Oracle 差异比较之四条件循环语句

    MySQL与Oracle差异比较之条件循环语句 在MySQL和Oracle中,条件循环语句主要由IF语句和CASE语句组成。这些语句经常被用来在查询中根据不同的条件执行不同的操作。 IF语句 MySQL和Oracle中的IF语句具有相同的语法形式: IF (condition, true_value, false_value) 其中,condition是IF…

    database 2023年5月21日
    00
  • SQL 计算所有可能的表达式组合的小计

    计算所有可能的表达式组合的小计可以通过SQL中的GROUP BY和WITH ROLLUP来实现。具体步骤如下: 构建SQL查询语句,将需要计算小计的列通过GROUP BY进行分组。 例如,有一张名为sales的表,其中包含不同类型的商品销售情况,包括商品名、销售时间、销售数量和销售金额等信息。需要计算每个商品类型和每个销售时间段的销售量和销售金额小计,可以如…

    database 2023年3月27日
    00
  • linux 常见的标识与Redis数据库详解

    Linux 常见的标识 文件权限标识 Linux系统中,每个文件都有自己的权限标识,包括文件所有者、文件所属组和文件其他用户的权限。其中,文件的权限标识用10位二进制数来表示,分为三组,每组用三位表示。具体如下: 文件所有者权限:读取(r)、写入(w)、执行(x),用 rwx 表示,分别对应二进制数值 4、2、1;文件所属组权限:读取(r)、写入(w)、执行…

    database 2023年5月22日
    00
合作推广
合作推广
分享本页
返回顶部