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日

相关文章

  • MySql8.0 安装重要的两步。

    1.去官网下载mysql社区版 windows安装包。https://dev.mysql.com/downloads/windows/installer/8.0.html   https://dev.mysql.com/downloads/         2.在安装包 安装的过程中,有一步就是启动mysql 会失败:             然后修改服务后…

    MySQL 2023年4月13日
    00
  • Solr服务在Linux上的搭建的图文教程

    当在Linux系统上搭建Solr服务时,可以按照以下步骤进行操作: 安装Java环境 首先需要确保已经安装了Java环境,可以通过以下命令来检查: java -version 如果环境未安装,则需要安装相应的版本。可以使用以下命令来安装OpenJDK: sudo apt-get update sudo apt-get install default-jdk …

    database 2023年5月22日
    00
  • 使用.NET 6开发TodoList应用之引入数据存储的思路详解

    这里是使用.NET 6开发TodoList应用之引入数据存储的思路详解的完整攻略。 简介 在TodoList应用的开发过程中,数据存储是一个非常重要的部分。本攻略将会讲解如何使用.NET 6进行数据存储的设计和实现。我们将会使用Microsoft Entity Framework Core作为数据访问程序框架,并使用SQLite数据库作为数据存储介质。 安装…

    database 2023年5月21日
    00
  • MongoDB管理数据关系的3种方法

    MongoDB是一种非关系型数据库,用于存储和管理大量的、格式不固定的数据。MongoDB提供了一种灵活的数据模型,使得您可以轻松地存储和访问数据,而无需事先定义表结构。 在MongoDB中,关系的管理不同于传统的关系型数据库,因为它是基于文档的存储模型。 本文将详细介绍MongoDB中的关系管理,包括文档嵌套、引用和聚合等技术。 文档嵌套 文档嵌套是Mon…

    MongoDB 2023年3月14日
    00
  • SQL 创建、更新和删除视图的方法

    当需要频繁地使用复杂的SELECT查询语句时,为了方便和简洁起见,可以使用视图(View)。视图是一个虚拟的表,它的内容由SELECT查询语句来定义。可以使用CREATE VIEW语句创建视图,使用ALTER VIEW语句更新视图,使用DROP VIEW语句删除视图。以下是SQL创建、更新和删除视图的方法: 创建视图 语法: CREATE VIEW view…

    database 2023年5月22日
    00
  • MySQL插入时间差八小时问题的解决方法

    MySQL插入时间差八小时问题的解决方法 在使用MySQL数据库进行时间插入时,我们常常会遇到时间差八小时的问题,这是因为MySQL默认时区为UTC,而我们所处的时区可能与UTC不一致。这会导致我们在插入时间时出现时间偏移的情况。下面我们详细讲解如何解决这个问题。 方法一:修改服务器时区 我们可以通过修改服务器的时区来解决这个问题。我们需要先确定本地所处的时…

    database 2023年5月22日
    00
  • 关于CentOS 8 搭建MongoDB4.4分片集群的问题

    本文将详细讲解如何在 CentOS 8 上搭建 MongoDB 4.4 分片集群。 环境准备 三台 CentOS 8 服务器,最好是在同一个局域网内 所需软件:MongoDB 4.4 安装 MongoDB 在三台服务器上分别执行如下命令安装 MongoDB: sudo yum install -y mongodb-org 配置 MongoDB 在每个节点上创…

    database 2023年5月22日
    00
  • SpringBoot用多线程批量导入数据库实现方法

    下面是 Spring Boot 用多线程批量导入数据库实现方法的详细攻略。 1. 背景介绍 在实际的软件开发过程中,数据导入操作是一个非常常见的需求。如果数据比较少的时候,通过单线程导入是能够满足需求的。但是如果数据量很大时,单线程导入会非常慢,可能需要几个小时或者几天的时间才能完成。 因此,如果我们能够使用多线程技术来进行批量导入,就可以大大提高导入效率,…

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