MySQL基础查询篇(8)-日期和时间函数的应用

MySQL数据库是一种流行的关系型数据库管理系统,具有强大的日期和时间函数,用于对日期和时间数据进行各种操作和计算。在本篇博客中,我们将介绍MySQL数据库中一些常用的日期和时间函数,并提供详细示例说明其用法。

1. CURDATE()和NOW()

CURDATE()函数返回当前日期,NOW()函数返回当前日期和时间。这两个函数无需任何参数,直接调用即可。

示例:

SELECT CURDATE();  -- 返回当前日期,格式为YYYY-MM-DD
SELECT NOW();     -- 返回当前日期和时间,格式为YYYY-MM-DD HH:MM:SS

2. DATE_FORMAT()

DATE_FORMAT()函数用于将日期和时间按照指定格式进行格式化。它接受两个参数:要格式化的日期/时间和格式字符串。

示例:

SELECT DATE_FORMAT("2022-01-01", "%Y年%m月%d日");  -- 将日期格式化为“YYYY年MM月DD日”的形式,输出结果为2022年01月01日
SELECT DATE_FORMAT(NOW(), "%Y-%m-%d %H:%i:%s");   -- 将当前日期和时间格式化为YYYY-MM-DD HH:MM:SS的形式

3. YEAR(), MONTH(), DAY()

YEAR()、MONTH()和DAY()函数用于从日期/时间中提取年份、月份和日期部分。

示例:

SELECT YEAR("2022-01-01");  -- 提取出日期中的年份,输出结果为2022
SELECT MONTH("2022-01-01"); -- 提取出日期中的月份,输出结果为1
SELECT DAY("2022-01-01");   -- 提取出日期中的日期,输出结果为1

4. DATE_ADD()和DATE_SUB()

DATE_ADD()和DATE_SUB()函数用于对日期进行加减操作。它们接受三个参数:待操作的日期,要加减的时间间隔,以及加减的单位(年、月、日等)。

示例:

SELECT DATE_ADD("2022-01-01", INTERVAL 1 YEAR);  -- 在2022-01-01的基础上加1年,输出结果为2023-01-01
SELECT DATE_SUB("2022-01-01", INTERVAL 1 MONTH); -- 在2022-01-01的基础上减1个月,输出结果为2021-12-01

5. DATEDIFF()

DATEDIFF()函数用于计算两个日期之间的天数差距。

示例:

SELECT DATEDIFF("2022-01-01", "2021-12-31");  -- 计算2022-01-01和2021-12-31之间的天数差距,输出结果为1

6. TIMESTAMPDIFF()

TIMESTAMPDIFF()函数用于计算两个时间之间的差距。它接受三个参数:时间单位(秒、分钟、小时等),较大的时间和较小的时间。

示例:

SELECT TIMESTAMPDIFF(MINUTE, "2022-01-01 12:00:00", "2022-01-01 13:30:00"); -- 计算两个时间之间的分钟差距,输出结果为90

7. UNIX_TIMESTAMP()

UNIX_TIMESTAMP()函数用于将日期/时间转换为Unix时间戳。

示例:

SELECT UNIX_TIMESTAMP("2022-01-01 00:00:00"); -- 将时间转换为Unix时间戳,输出结果为1640995200

以上仅是MySQL数据库日期和时间函数的一部分功能,MySQL还提供了许多其他有用的函数来处理日期和时间数据。掌握这些函数的用法可以帮助我们更方便地处理和计算日期和时间相关的需求。希望本篇博客对您理解MySQL日期和时间函数的应用有所帮助。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/678724.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

简单介绍算法的基本概念

算法的基本概念 计算机所进行的一切操作都是由程序决定的,程序是由人们事先编好并输入计算机的。 一个程序包括以下两方面的内容: 对数据的描述:在程序中要指定用到哪些数据以及这些数据的类型和数据的组织形式,即数据结构 对操作的描述&a…

c语言游戏实战(4):人生重开模拟器

前言: 人生重开模拟器是前段时间非常火的一个小游戏,接下来我们将一起学习使用c语言写一个简易版的人生重开模拟器。 网页版游戏: 人生重开模拟器 (ytecn.com) 1.实现一个简化版的人生重开模拟器 (1) 游戏开始的时…

Transformer实战-系列教程10:SwinTransformer 源码解读3(SwinTransformerBlock类)

🚩🚩🚩Transformer实战-系列教程总目录 有任何问题欢迎在下面留言 本篇文章的代码运行界面均在Pycharm中进行 本篇文章配套的代码资源已经上传 点我下载源码 SwinTransformer 算法原理 SwinTransformer 源码解读1(项目配置/SwinTr…

PLC在物联网中位置—承上启下,与上位机下位机的关联。

谈到物联网,就绕不开PLC,本文着重介绍PLC的定义、与单片机的区分,价值、物联网中的位置,以及和上位机、下位机的关联,让友友们对PLC有个全面的认知。 一、什么是PLC PLC是可编程逻辑控制器(Programmable L…

UI自动刷新大法:DataBinding数据绑定

之前我们讲了DataBinding在Activity、Fragment、RecyclerView中的基础使用,而那些常规使用方法里,每当绑定的变量发生数据变化时,都需要ViewDataBinding重新设值才会刷新对应UI。而DataBinding通过内部实现的观察者模式来进行自动刷新UI&…

go消息队列RabbitMQ - 订阅模式-direct

1.发布订阅 在Fanout模式中,一条消息,会被所有订阅的队列都消费。但是,在某些场景下,我们希望不同的消息被不同的队列消费。这时就要用到Direct类型的Exchange。 在Direct模型下: 队列与交换机的绑定,不能…

第 384 场 LeetCode 周赛题解

A 修改矩阵 模拟 class Solution { public:vector<vector<int>> modifiedMatrix(vector<vector<int>> &matrix) {int m matrix.size(), n matrix[0].size();vector<int> mx(n, INT32_MIN);for (int i 0; i < m; i)for (int j 0; j &l…

Java微服务学习Day1

文章目录 认识微服务服务拆分及远程调用服务拆分服务远程调用提供者与消费者 Eureka注册中心介绍构建EurekaServer注册user-serviceorder-service完成服务拉取 Ribbon负载均衡介绍原理策略饥饿加载 Nacos注册中心介绍配置分级存储负载均衡环境隔离nacos注册中心原理 认识微服务…

ChatGPT学习大纲

引言 在2023年2月份左右开始使用ChatGPT时&#xff0c;就被它强大的理解能力和应答效果所折服&#xff0c;这期间一直在断断续续的学习和使用&#xff0c;也没形成一个完整的学习过程&#xff0c;最近刚好有空&#xff0c;就寻思着好好再学习总结一下&#xff0c;故写出了ChatG…

Python : 使用python实现学生管理系统的功能,详细注释

一、学生管理系统 学生描述&#xff1a;姓名、年龄、成绩 学生管理系统功能&#xff1a;添加学生信息、删除学生信息、根据姓名修改学生信息、根据姓名查询学生信息、显示所有学生信息、退出系统 二、代码说明 1. 将每一个学生的信息放一个元组中&#xff0c;再把元组添加到列表…

java中使用Lambda表达式实现参数化方法

Lambda表达式实现参数化方法说明 Lambda表达式在Java中是一种简洁、函数式的方式来表示匿名函数。它们特别适用于那些需要一个函数作为参数的方法&#xff0c;即函数式接口。参数化方法&#xff08;通常指的是泛型方法&#xff09;是那些可以接受类型参数的方法&#xff0c;这…

2.3 Verilog 数据类型

Verilog 最常用的 2 种数据类型就是线网&#xff08;wire&#xff09;与寄存器&#xff08;reg&#xff09;&#xff0c;其余类型可以理解为这两种数据类型的扩展或辅助。 线网&#xff08;wire&#xff09; wire 类型表示硬件单元之间的物理连线&#xff0c;由其连接的器件输…

单片机基础入门:简单介绍51单片机的工作原理

在电子技术领域&#xff0c;单片机是实现智能化控制不可或缺的关键元件。它们集成了许多功能于一身&#xff0c;成为了各种电子系统的心脏。为了更好地理解单片机如何工作&#xff0c;本文将重点介绍51单片机的基本组成和工作原理。 51单片机是一种广泛使用的微控制器&#xf…

Android 车载应用之快速入门

一、Android Automotive OS 概览 车载 Android 系统也被称为 Android Automotive OS,是对原始 Android 系统的一个功能扩充版本。与手机系统一样,Android Automotive OS 源代码完全开放,第三方供应商和汽车制造商可以官方源码的基础上自行开发和拓展,无论是编程语言还是各…

CI/CD到底是啥?持续集成/持续部署概念解释

前言 大家好&#xff0c;我是chowley&#xff0c;日常工作中&#xff0c;我每天都在接触CI/CD&#xff0c;今天就给出我心中的答案。 在现代软件开发中&#xff0c;持续集成&#xff08;Continuous Integration&#xff0c;CI&#xff09;和持续部署&#xff08;Continuous D…

【UE 求职】学了虚幻引擎可以应聘哪些岗位?

目录 1 领域1.1 游戏开发领域1.2 影视和动画制作1.3 建筑和工程可视化1.4 模拟和训练1.5 其他领域 2 如何做好一份简历1. 明确简历目标2. 突出UE5相关技能3. 展示相关项目经验4. 教育背景5. 专业经验6. 软技能7. 证书和奖项8. 定制化和校对 &#x1f64b;‍♂️ 作者&#xff1…

Day41- 动态规划part09

一、打家劫舍 题目一&#xff1a;198. 打家劫舍 198. 打家劫舍 你是一个专业的小偷&#xff0c;计划偷窃沿街的房屋。每间房内都藏有一定的现金&#xff0c;影响你偷窃的唯一制约因素就是相邻的房屋装有相互连通的防盗系统&#xff0c;如果两间相邻的房屋在同一晚上被小偷闯…

使用PHPStudy搭建本地web网站并实现任意浏览器公网访问

文章目录 [toc]使用工具1. 本地搭建web网站1.1 下载phpstudy后解压并安装1.2 打开默认站点&#xff0c;测试1.3 下载静态演示站点1.4 打开站点根目录1.5 复制演示站点到站网根目录1.6 在浏览器中&#xff0c;查看演示效果。 2. 将本地web网站发布到公网2.1 安装cpolar内网穿透2…

springcloud分布式架构网上商城源码和论文

首先,论文一开始便是清楚的论述了系统的研究内容。其次,剖析系统需求分析,弄明白“做什么”,分析包括业务分析和业务流程的分析以及用例分析,更进一步明确系统的需求。然后在明白了系统的需求基础上需要进一步地设计系统,主要包罗软件架构模式、整体功能模块、数据库设计。本项…

Unity Meta Quest MR 开发(四):使用 Scene API 和 Depth API 实现深度识别和环境遮挡

文章目录 &#x1f4d5;教程说明&#x1f4d5;Scene API 实现遮挡&#x1f4d5;Scene API 实现遮挡的缺点&#x1f4d5;Depth API 实现遮挡⭐导入 Depth API⭐修改环境配置⭐添加 EnvironmentDepthOcclusion 预制体⭐给物体替换遮挡 Shader⭐取消现实手部的遮挡效果 此教程相关…