Mysql日期格式以及内置日期函数用法详解

Mysql日期格式

在Mysql中,日期数据类型包括DATE、TIME、DATETIME、TIMESTAMP、YEAR五种,它们都有各自的日期格式。

DATE

DATE类型存储格式为'YYYY-MM-DD'。

例如:

2022-01-01

TIME

TIME类型存储格式为'hh:mm:ss'。

例如:

14:30:00

DATETIME

DATETIME类型存储格式为'YYYY-MM-DD hh:mm:ss'。

例如:

2022-01-01 14:30:00

TIMESTAMP

TIMESTAMP类型存储格式为'YYYY-MM-DD hh:mm:ss',但是它允许 NULL 值,而 DATETIME 不允许 NULL 值。

例如:

2022-01-01 14:30:00

YEAR

YEAR类型存储格式为'YYYY'或'YY'(4位或2位)。

例如:

2022

Mysql日期函数

Mysql内置了很多常用的日期函数,下面介绍几个常用的日期函数。

NOW

NOW() 函数返回当前的日期和时间。

例如:

SELECT NOW() as now_time;

输出:

now_time
2022-01-01 14:30:00

DATE_FORMAT

DATE_FORMAT(date, format) 函数以指定的格式显示日期或时间值。

例如:

SELECT DATE_FORMAT(NOW(), "%Y-%m-%d") as date;

输出:

date
2022-01-01

DATE_ADD

DATE_ADD(date, INTERVAL value unit) 函数用于在日期上加上一个指定的时间间隔。

例如:

SELECT DATE_ADD(NOW(), INTERVAL 1 DAY) as tomorrow;

输出:

tomorrow
2022-01-02 14:30:00

DATEDIFF

DATEDIFF(date1, date2) 函数返回两个日期之间的天数。

例如:

SELECT DATEDIFF("2022-01-02", "2022-01-01") as diff;

输出:

diff
1

示例说明

示例一

现在我们要找出一个表格中所有注册时间在2022年之后的用户,可以使用以下语句:

SELECT *
FROM user
WHERE DATE_FORMAT(create_time, "%Y") >= "2022";

这里使用了 DATE_FORMAT 函数,将 create_time 字段格式化成年份,然后跟 "2022" 进行比较,只保留符合条件的行。

示例二

现在我们要统计一个表格中每个用户的购买总金额,可以使用以下语句:

SELECT user_id, SUM(amount) as total_amount
FROM order
GROUP BY user_id;

这里使用了 SUM 聚合函数,根据 user_id 分组,计算每个用户的购买总金额。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Mysql日期格式以及内置日期函数用法详解 - Python技术站

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

相关文章

  • Oracle dbf文件移动的方法

    移动Oracle数据库的dbf文件是一项常见的任务,它可以让我们重新组织存储空间或将数据库从一个服务器迁移到另一个服务器上。以下是将dbf文件移动到不同路径的方法: 方法一:使用Oracle SQL命令 首先,使用以下命令查询当前数据库文件的位置: SELECT name, value FROM v$parameter WHERE name LIKE ‘%d…

    database 2023年5月22日
    00
  • Centos8安装mysql8的详细过程(免安装版/或者二进制包方式安装)

    以下是CentOS 8安装MySQL 8的详细过程。 准备工作 在开始安装之前,需要在CentOS 8上安装一些依赖项以支持MySQL 8。在终端中运行以下命令: sudo dnf install wget curl vim sudo dnf install libaio sudo dnf install numactl 这些命令将安装wget、curl和v…

    database 2023年5月22日
    00
  • MySQL六种约束的示例详解(全网最全)

    第一步,先介绍约束的概念以及常见的六种约束: 在MySQL中,约束是对表中数据的限制,可以在创建表的过程中定义或者在表创建完成之后添加。六种常见数据库约束包括: PRIMARY KEY (主键) FOREIGN KEY(外键) UNIQUE(唯一) NOT NULL(非空) CHECK(检查) DEFAULT(默认) 主键的作用是唯一标识每张表内每一行数据,…

    database 2023年5月19日
    00
  • Python MySQL 日期时间格式化作为参数的操作

    MySQL 中日期时间格式化操作的概述 在 Python 中,我们可以使用 MySQL Connector 模块类库来连接 MySQL 数据库,使用 SQL 语言操作数据库。在实际操作中,我们经常需要查询日期时间类型的数据,或者在对数据库进行增删改操作时需要传入格式化后的日期时间参数。这时,MySQL 中日期时间的格式化操作就变得异常重要了。MySQL 中支…

    database 2023年5月22日
    00
  • MySQL日志分析软件mysqlsla的安装和使用教程

    下面是“MySQL日志分析软件mysqlsla的安装和使用教程”的完整攻略。 一、什么是mysqlsla mysqlsla是一款MySQL日志分析工具,可以分析MySQL的Slow Query、General Query、Error Log等各种日志。更重要的是,mysqlsla可以生成易于阅读的HTML报告,便于我们查找和分析MySQL的问题。 二、安装m…

    database 2023年5月22日
    00
  • RedHat Linux5.5下Oracle 11g安装图解教程

    RedHat Linux 5.5 下 Oracle 11g 安装图解教程 1. 前置条件 在安装 Oracle 11g 之前,请确保系统满足以下要求: 系统版本为 RedHat Linux 5.5; 机器的 CPU 架构为 x86_64; 系统内核版本为 2.6.18-194.el5; 系统硬件配置至少为 1GB 内存和 3GB 磁盘空间。 2. 下载 Or…

    database 2023年5月22日
    00
  • Sqlserver 2000/2005/2008 的收缩日志方法和清理日志方法

    收缩日志方法: 使用 SQL Server Management Studio (SSMS) 收缩日志: 打开 SSMS,连接到 SQL Server 数据库。 在左侧面板中展开该数据库并右键单击“任务”,选择“收缩”。 在弹出的“收缩数据库”对话框中,选择“文件类型”为“日志”,然后点击“OK”即可执行收缩操作。 使用 T-SQL 命令收缩日志: 打开 S…

    database 2023年5月21日
    00
  • 关于Spring的@Transaction导致数据库回滚全部生效问题(又删库跑路)

    关于Spring的事务管理,如果使用默认配置会导致数据库中的数据出现异常时,整个事务会被回滚,包括正常执行的数据也会被回滚,这种情况下可能会造成严重的数据丢失。以下是我总结出的关于这个问题的完整攻略: 问题分析 在 Spring 中,默认情况下,使用 @Transactional 注解添加的事务会使用最悲观的隔离级别(TransactionDefinitio…

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