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日

相关文章

  • SQL Server成功与服务器建立连接但是在登录过程中发生错误的快速解决方案

    当使用SQL Server登录时,可能会出现登录过程中发生错误的问题,这种情况可能是服务器上的 SQL Server 实例无法正常启动或运行,也可能是本地计算机上的网络连接问题。下面是一些可能使 SQL Server 登录过程出错的原因以及相应的解决方案。 原因分析 原因1:SQL Server 实例无法正常启动或运行 当 SQL Server 实例未能成功…

    database 2023年5月21日
    00
  • MSSQL附加数据库拒绝访问提示5120错误的处理方法

    以下是MSSQL附加数据库拒绝访问提示5120错误的处理方法的完整攻略: 问题描述 在使用MSSQL Server Management Studio附加数据库时,可能会遇到拒绝访问并提示5120错误的情况。这个错误通常是由于权限不足或操作系统文件句柄正在被使用导致的。 处理方法 方法一:使用管理员权限运行MSSQL Server Management St…

    database 2023年5月19日
    00
  • Mysql连接join查询原理知识点

    Mysql连接join查询原理知识点是数据库领域中非常关键的概念,它将多张表中的数据进行匹配,然后产生更加详细和有用的数据集结果。在进行Mysql连接join查询的时候,有三种常见的方式:inner join,left join,right join。下面将对它们进行详细的解释。 Inner Join inner join就是传统的SQL连接方式,它需要两张…

    database 2023年5月22日
    00
  • k8s部署redis cluster集群的实现

    下面是关于”k8s部署redis cluster集群的实现”的完整攻略: 简介 Redis是一种常用的NoSQL数据库,它支持内存中的数据存储,使其能够快速地处理大量的数据,是一个非常流行的缓存工具。而随着云计算的发展,Kubernetes也成为了流行的容器化部署工具之一,因此,将Redis集群部署到Kubernetes上是一个非常实用的操作。 在Kuber…

    database 2023年5月22日
    00
  • linux系统下实现mysql热备份详细步骤(mysql主从复制)

    下面是详细的步骤和示例说明,具体流程如下: 环境准备 在进行 MySQL 主从复制之前,需要做一些准备: 确保主库和从库都安装了 MySQL 数据库,并且版本一致 确保主库和从库都能够相互访问,即主库能够访问从库,从库能够访问主库 确保主库和从库都有相同的字符集和排序规则 主库配置 在主库上创建一个账号,并为该账号赋予 REPLICATION SLAVE 的…

    database 2023年5月21日
    00
  • 如何设计高效合理的MySQL查询语句

    当我们面对海量数据时,设计高效合理的MySQL查询语句显得尤为重要,它不仅可以极大提高数据处理的效率,还能够有效减轻系统压力。在进行MySQL查询操作时,我们需要遵循以下几个原则: 尽量减少查询数据的数量 尽量减少查询的数据类型转换 尽可能使用索引 避免使用大量的子查询或联表查询 下面分别从这些原则入手,讲解如何设计高效合理的MySQL查询语句。 1. 尽量…

    database 2023年5月19日
    00
  • MySql5.x升级MySql8.x的方法步骤

    以下是关于MySQL 5.x升级至MySQL 8.x的详细步骤攻略: 1.备份数据 在进行任何数据库的升级之前,首先需要对现有数据库进行备份,以防止数据的丢失和损坏。 使用以下命令备份MySQL数据库: mysqldump -u username -p database_name > backup.sql 其中,username为拥有此数据库权限的用户…

    database 2023年5月22日
    00
  • 如果redis没有设置expire,他是否默认永不过期?

    通过EXPIRE key seconds 命令来设置数据的过期时间。返回1表明设置成功,返回0表明key不存在或者不能成功设置过期时间。在key上设置了过期时间后key将在指定的秒数后被自动删除。被指定了过期时间的key在Redis中被称为是不稳定的。 Redis key过期的方式有三种: 惰性删除:当读/写一个已经过期的key时,会触发惰性删除策略,直接删…

    Redis 2023年4月13日
    00
合作推广
合作推广
分享本页
返回顶部