mysql date 截取
  boGhnYbtqybm 2023年11月02日 41 0

MySQL日期截取

在MySQL中,我们经常需要从日期时间数据中提取特定的部分,例如年、月、日、小时等。为了实现这个目标,MySQL提供了一些内置的函数和操作符。本文将介绍如何使用这些函数和操作符来截取日期和时间,并给出相应的代码示例。

1. DATE格式

在MySQL中,日期和时间可以以不同的格式存储,最常见的格式是YYYY-MM-DD,即年-月-日。其他常见的格式包括YY-MM-DDYYYY-MM-DD HH:MM:SS等。

2. DATE函数

MySQL提供了一些内置函数,用于从日期时间数据中提取特定的部分。

YEAR()

YEAR()函数用于提取日期时间数据的年份。下面是一个示例:

SELECT YEAR('2022-12-31');

结果为:

2022

MONTH()

MONTH()函数用于提取日期时间数据的月份。下面是一个示例:

SELECT MONTH('2022-12-31');

结果为:

12

DAY()

DAY()函数用于提取日期时间数据的天数。下面是一个示例:

SELECT DAY('2022-12-31');

结果为:

31

HOUR()

HOUR()函数用于提取日期时间数据的小时数。下面是一个示例:

SELECT HOUR('2022-12-31 23:59:59');

结果为:

23

MINUTE()

MINUTE()函数用于提取日期时间数据的分钟数。下面是一个示例:

SELECT MINUTE('2022-12-31 23:59:59');

结果为:

59

SECOND()

SECOND()函数用于提取日期时间数据的秒数。下面是一个示例:

SELECT SECOND('2022-12-31 23:59:59');

结果为:

59

3. DATE_FORMAT函数

除了提取特定部分外,还可以使用DATE_FORMAT()函数将日期时间数据格式化成所需的字符串。

下面是一些常用的格式化字符:

  • %Y:四位数的年份
  • %y:两位数的年份
  • %m:两位数的月份(01-12)
  • %d:两位数的日期(01-31)
  • %H:24小时制的小时数(00-23)
  • %h:12小时制的小时数(01-12)
  • %i:两位数的分钟数(00-59)
  • %s:两位数的秒数(00-59)
  • %p:AM或PM

下面是一个示例:

SELECT DATE_FORMAT('2022-12-31 23:59:59', '%Y-%m-%d %H:%i:%s');

结果为:

2022-12-31 23:59:59

4. 操作符

除了使用函数外,还可以使用操作符来截取日期和时间的特定部分。

DATE_SUB()

DATE_SUB()函数用于减去日期时间数据的一部分。下面是一个示例:

SELECT DATE_SUB('2022-12-31', INTERVAL 1 DAY);

结果为:

2022-12-30

DATE_ADD()

DATE_ADD()函数用于添加日期时间数据的一部分。下面是一个示例:

SELECT DATE_ADD('2022-12-31', INTERVAL 1 DAY);

结果为:

2023-01-01

EXTRACT()

EXTRACT()函数用于提取日期时间数据的特定部分。下面是一个示例:

SELECT EXTRACT(YEAR FROM '2022-12-31');

结果为:

2022

5. 示例

下面是一个完整的示例,展示如何使用上述函数和操作符来截取日期和时间:

-- 创建一个示例表
CREATE TABLE `example` (
  `id` INT PRIMARY KEY,
  `date_time` DATETIME
);

-- 插入示例数据
INSERT INTO `example` VALUES (1, '2022-12-31 23:59:59');

-- 查询截取结果
SELECT
  `id`,
  `date_time`,
  YEAR(`date_time`) AS `year`,
  MONTH(`date_time`)
【版权声明】本文内容来自摩杜云社区用户原创、第三方投稿、转载,内容版权归原作者所有。本网站的目的在于传递更多信息,不拥有版权,亦不承担相应法律责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@moduyun.com

  1. 分享:
最后一次编辑于 2023年11月08日 0

暂无评论

推荐阅读
  xaeiTka4h8LY   2024年05月31日   50   0   0 MySQLSQL
  xaeiTka4h8LY   2024年05月17日   54   0   0 数据库JavaSQL
  xaeiTka4h8LY   2024年05月17日   54   0   0 数据库SQL
  Dk8XksB4KnJY   2023年12月23日   32   0   0 字段字段SQLSQL
boGhnYbtqybm