MySQL中的 DATE_FORMAT 与 SQL 中的 DATEPART()函数使用介绍

2023-05-16

本小白最近学习MySQL,因为之前是已经有学过微软大佬的SQL Server所以自认为理解的还是稍快的(滑鸡),好了说正事。

今天在写一个查询语句时,需要用到 一个日期函数:DATEPART( )

因为SQL Server是有这个函数的,所以首先想到了这个函数,结果发现在MySQL中这个函数是不存在的

赶紧去百度,在 API 中查询琢磨了半天终于搞明白了!!

在MySQL中,虽然没有 DATEPART( ) 函数,但是可以用 DATE_FORMAT( )函数来代替,两种函数的用法基本一致,接下来记录一下这两个函数的使用。

DATEPART ( ) 函数

DATEPART( )函数:用来返回代表指定日期的指定日期部分的整数。

语法如下:


DATEPART( 日期缩写 , 日期 )   例如  DATEPART( dd , 2019-03-08 )  

解释:简单来说就是,这个函数需要传入两个参数,第一个参数是你要提取的部分(比如:yy,mm,dd 等),第二个参数当然就是你要从哪个日期中取出你需要的时间啦

下面将列出日期和日期缩写的表:

日期缩写
年(year)yy或yyyy
季度(quarter)qq或q
月(month)mm或m
年的第几天(dayofyear)dy或y
天(day)dd或d
周(week)wk或ww
一周的第几天(weekday)dw
小时(Hour)hh
分钟(minute)mi或n
秒(second)ss或s
毫秒(millisecond)ms

代码演示阶段:


SELECT DATEPART(yy,'2019-03-08 18:50')
返回:2019

SELECT DATEPART(mm,'2019-03-08 18:50')
返回:3

SELECT DATEPART(dd,'2019-03-08 18:50:25')
返回:8

SELECT DATEPART(qq,'2019-03-08 18:50:25')
返回:1

SELECT DATEPART(dy,'2019-03-08 18:50:25')
返回:67

SELECT DATEPART(ww,'2019-03-08 18:50:25')
返回:10

--这个返回这周第几天需要注意一下:
--2019-03-08实际是星期五但是返回了6
--是因为国际标准每周日是每星期的第一天,周六则是每星期的最后一天
--所以星期五则返回6
SELECT DATEPART(dw,'2019-03-08 18:50:25')
返回:6

SELECT DATEPART(hh,'2019-03-08 18:50:25')
返回:18

SELECT DATEPART(mi,'2019-03-08 18:50:25')
返回:50

SELECT DATEPART(ss,'2019-03-08 18:50:25')
返回:25

--因为我没输入毫秒所以默认是0
SELECT DATEPART(ms,'2019-03-08 18:50:25')
返回:0  

 好了到这里关于 DATEPART() 函数的介绍基本已经说完了,接下来说说DATE_FORMAT()函数

DATE_FORMAT()函数

DATE_FORMAT( )函数:用来从指定的日期中返回你指定的日期格式。

语法为:

 


#正好和DATEPART()相反
#DATEPART()中的参数第一个是指定格式,第二个是指定日期
DATE_FORMAT( 指定日期 , 指定格式 )    例如    DATE_FORMAT('2019-03-09 09:56:35' , '%Y')  

 

这里会发现指定的格式('%Y')在我上面写的表中是没有的,当然,DATE_FORMAT是有一个专门的格式表

在这里重新列出来可用在DATE_FORMAT()函数的格式表

如下表:

格式符说明
%a

工作日的缩写名称  (Sun..Sat)

%b

月份的缩写名称  (Jan..Dec)

%c

月份,数字形式(0..12)

%D

带有英语后缀的该月日期  (0th, 1st, 2nd, 3rd, ...)

%d

该月日期, 数字形式 (00..31)

%e

该月日期, 数字形式(0..31)

%f

微秒 (000000..999999)

%H

小时(00..23)

%h

小时(01..12)

%I

小时 (01..12)

%i

分钟,数字形式 (00..59)

%j

一年中的第几天 (001..366)

%k

小时 (0..23)

%l(小写L)

小时 (1..12)

%M

月份名称 (January..December)

%m

月份, 数字形式 (00..12)

%p

上午(AM)或下午( PM)

%r

获得时间 ,例如 (10: 11: 43 AM)

%S

秒 (00..59)

%s

秒 (00..59)

%T

时间 , 例如 (10:11:43   不加AM或PM)

%U周 (00..53), 其中周日为每周的第一天
%u周 (00..53), 其中周一为每周的第一天 
%V

周 (01..53), 其中周日为每周的第一天 ; 和 %X同时使用

%v

周 (01..53), 其中周一为每周的第一天 ; 和 %x同时使用

%W

工作日名称 (周日..周六)

%w

一周中的每日 (0=周日..6=周六)

%X

该周的年份,其中周日为每周的第一天, 数字形式,4位数;和%V同时使用

%x

该周的年份,其中周一为每周的第一天, 数字形式,4位数;和%v同时使用

%Y

年份, 数字形式,4位数

%y

年份, 数字形式 (2位数)

%%

‘%’文字字符

代码演示阶段:


--因为格式字符太多所以这次只演示一部分常用的,其他的自行实验

SELECT DATE_FORMAT('2019-03-09 10:18:37','%Y')
返回:2019

SELECT DATE_FORMAT('2019-03-09 10:18:37','%y')
返回:19

SELECT DATE_FORMAT('2019-03-09 10:18:37','%c')
返回:3

SELECT DATE_FORMAT('2019-03-09 10:18:37','%d')
返回:09

SELECT DATE_FORMAT('2019-03-09 10:18:37','%e')
返回:9

SELECT DATE_FORMAT('2019-03-09 10:18:37','%r')
返回:10:18:37  AM

SELECT DATE_FORMAT('2019-03-09 10:18:37','%T')
返回:10:18:37

SELECT DATE_FORMAT('2019-03-09 10:18:37','%m')
返回:03  

 

注:这里还有一点要说明,DATE_FORMAT()函数中还可以将指定的格式组合起来写,写法如下:

 


--比如这样,格式中我们写成 '%Y-%m-%d'
SELECT DATE_FORMAT('2019-03-09 10:18:37','%Y-%m-%d')
返回:2019-03-09
--注意这里的 '-' 连接符可以随意写自己想怎么写怎么写,也可以写成
SELECT DATE_FORMAT('2019-03-09 10:18:37','%Y年%m月%d日')
返回:2019年03月09日
--反正自己怎么看顺眼就怎么写



--自此本篇博客就此结束
--希望各位看官大爷觉得有帮助的记得点点赞手留余香
--如有不足的地方也欢迎在评论区评论  

 

转载于:https://www.cnblogs.com/wanguncle/p/10497675.html

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

MySQL中的 DATE_FORMAT 与 SQL 中的 DATEPART()函数使用介绍 的相关文章

  • MariaDB INSERT,UPDATE,DELETE

    MariaDB INSERT UPDATE DELETE INSERT 插入一整行 jlive crashcourse gt DESC customers 43 43 43 43 43 43 43 Field Type Null Key D
  • 安装VMWare tools,踩坑。记录一下

    对于没钱买服务器的小白 xff0c 只能靠安装虚拟机来勉强度日子 最近比较闲 xff0c 想实现一下docker的自动化部署 xff0c 在制作java8镜像时出了个问题 就是怎么在虚拟机上实现与本机文件夹的共享 坑了2天 记录一下 xff
  • webstorm tslint配置

    webstorm设置 settings gt gt TypeScript gt gt TSLint 勾选 Enable 选取 tslint包路径 npm node modules tslint xff0c 这里webstorm基本会自动读取
  • GitLab中用户的五种权限 Guest、Reporter、Developer、Master、Owner

    GitLab用户权限管理 xff1a GitLab用户在组中有五种权限 xff1a Guest Reporter Developer Master Owner 1 Guest xff1a 可以创建issue 发表评论 不能读写版本库 2 R
  • Vue基本格式及常用V-指令

    目录 常用指令例子v on click v model 双向绑定 xff0c 即其中一方改变值 xff0c 另一方也随之改变 例子2 v show v for v bind 绑定元素 其中一种写法 获得当前点击对象 v for渲染填充值 x
  • React Native工程中TSLint静态检查工具的探索之路

    建立的代码规范没人遵守 xff0c 项目中遍地风格迥异的代码 xff0c 你会不会抓狂 xff1f 通过测试用例的程序还会出现Bug xff0c 而原因仅仅是自己犯下的低级错误 xff0c 你会不会抓狂 xff1f 某种代码写法存在问题导致
  • github hexo常用命令

    61 61 61 安装hexo cd d hexo npm install hexo cli g hexo init blog cd blog npm install hexo g 或者hexo generate hexo s 或者hexo
  • ftp服务器多用文件夹权限,访问ftp服务器文件夹权限设置

    访问ftp服务器文件夹权限设置 内容精选 换一换 媒体处理服务无存储功能 xff0c 您需要先将待转码的原始视频文件上传至OBS桶中 xff0c 才能使用媒体处理服务进行转码 媒体处理只能服务同一区域的OBS桶中的音视频文件 xff0c 如
  • 百度静态资源库

    http cdn code baidu com 转载于 https www cnblogs com mingl12 p 6373088 html
  • InstallShield使用———安装设计界面

    InstallShield 使用 安装设计界面 1 安装设计界面 这里介绍的是 Installation Designer页面的界面 xff08 介绍一些重要的属性 xff09 1 1 Installation Information 1
  • iOS开发之ARC MRC混编

    Xcode5之后 xff0c 新建iOS工程 xff0c 默认都是ARC模式 xff0c 但是有时候我们的项目中需要用到一些第三方框架 xff0c 我们下载下来却发现是非ARC的 xff0c 这时候我们需要进行ARC和MRC混编 第一种方式
  • 二分法猜数字

    二分法 arr 61 range 10000000 start 61 0 end 61 len arr 1 res 61 776575 count 61 0 print arr index res while True count 61 c
  • jenkins报错jdk1.8/jre/lib/amd64/libawt_xawt.so

    环境 Ubuntu14 04 x64 jenkins 2 32 1 错误1 AWT is not properly configured on this server Perhaps you need to run your contain
  • [转载]最小矩形(rec1)的解题报告

    百度之星2009大赛的第二场有一道和此相关的题目 xff0c 如果看透这篇文章应该好写了 xff0c 不过可惜我事后才看到 xff0c 郁闷啊 xff01 xff01 还是要多看看书 原文 xff1a http www pmit com c
  • ftp权限设置大全!!!

    1 xff0e 登录和对匿名用户的设置 write enable 61 YES 是否对登录用户开启写权限 属全局性设置 默认NO local enable 61 YES 是否允许本地用户登录FTP服务器 默认为NO anonymous en
  • Vmware-虚拟中的linux如何增加硬盘(转)

    启动虚拟机软件VMware后 xff0c 点机VM菜单选择Setting xff0c 然后在弹出地菜单中选择 xff1a Add命令进行添加硬盘操作 完成后启动虚拟机 1 建立分区 fdisk l查看磁盘分区情况 此时你会发现多了一个 de
  • depot_tools download CPID client for windows 设置代理

    Downloading CIPD client for windows amd64 from https chrome infra packages appspot com Failed to download the file check
  • linux查看glibc命令,centos怎么看glibc版本 Linux查看glibc版本方法

    日前Linux GNU glibc标准库的 gethostbyname函数爆出缓冲区溢出漏洞 xff0c 影响版本为Glibc 2 2到2 17 xff0c 包含2 2和2 17版本 如果您正在使用Linux服务器的话 xff0c 快看看你
  • 2范数和F范数的区别

    2范数和F范数是不同的 2范数表示矩阵或向量的最大奇异值 xff0c max svd X 而 F范数表示矩阵所有元素平方和的开方根 sqrt x i j X x i j 2 转载于 https www cnblogs com yinwei
  • Ubuntu ftp服务器搭建 + UltraEdit编辑FTP文件

    0 前言 xff1a xff08 请无视 xff09 最近在写一个Linux脚本 xff0c 在电脑装了Ubuntu的虚拟机来测试脚本效果 xff1b 可是用vim编辑脚本实在是太蛋疼 xff0c 于是就想到UltraEdit编写 xff0

随机推荐

  • Windows远程桌面多用户登录的问题

    RDP WRAPPER 同时登录 多用户补丁 解决系统更新导致无法多用户登录的问题 问题描述 xff1a 安装最新的Windows系统更新补丁后 xff0c 使用RDP Wrapper多用户补丁的共享主机不支持多用户登录 系统会提示登录远程
  • mac man汉化方法

    https www jianshu com p 615a0a46193a utm campaign 61 maleskine amp utm content 61 note amp utm medium 61 seo notes amp u
  • 常见开发语言擅长领域

    Python xff1a 机器学习 xff0c 数据科学还有Web开发 JavaScript xff1a Web开发 xff08 前端和后端 xff09 和游戏开发 Java xff1a 移动Android应用程序开发 xff0c 企业应用
  • 【Arch安装】

    Arch安装 不完整 xff0c 凭记忆补充 1 xff0c 制作安装介质 xff08 请跳转链接 xff1a https www archlinux org download xff09 2 xff0c 从UEFI模式启动后 xff0c
  • 关于 systemctl --user status 报错的问题

    关于 systemctl user enable mpd 报错 xff1a Failed to connect to bus No such file or directory 因为arch脚本中 xff0c systemctl 是 sud
  • RNA-Seq比对软件HISAT2的用法

    参考网址 xff1a http blog sciencenet cn blog 759995 990471 html 感谢原作者 转载于 https www cnblogs com lmt921108 p 7442839 html
  • curl: (1) Protocol 'http not supported or disabled in libcurl

    在windows中使用curl的时候 xff0c 命令为 curl 39 http localhost 9200 pretty 39 出现这个报错 curl 1 Protocol 39 http not supported or disab
  • Linux日志服务器配置

    配置日志服务器 环境 xff1a tibet xff1a 10 11 3 57 gaplinux xff08 日志服务器 xff09 xff1a 10 11 3 3 修改tibet上的 etc hosts xff0c 增加如下代码 xff1
  • Ubuntu16.04下配置ssh免密登录

    Ubuntu16 04下配置ssh免密登录 环境准备 xff1a 新建两台虚拟机 xff0c 而且两台虚拟机上都装有Ubuntu16 04的系统 xff0c 使两台虚拟机之间保持互通状态 分别为两台虚拟机命名为A B 假设我们要使A虚拟机免
  • linux slf4j找不到,SLF4J错误消息

    在本章中 xff0c 我们将讨论在使用SLF4J时获得的各种错误消息或警告以及这些消息的原因 含义 无法加载类 org slf4j impl StaticLoggerBinder 这是在类路径中没有提供SLF4J绑定时引起的警告 以下是完整
  • C#使用RabbitMQ

    1 说明 在企业应用系统领域 xff0c 会面对不同系统之间的通信 集成与整合 xff0c 尤其当面临异构系统时 xff0c 这种分布式的调用与通信变得越发重要 其次 xff0c 系统中一般会有很多对实时性要求不高的但是执行起来比较较耗时的
  • 安装rpm的mysql_linux下安装rpm格式的mysql

    1 下载安装包 官网下载 rpm格式安装包 xff0c 需要下面两个文件 xff1a MySQL server 5 0 26 0 i386 rpm MySQL client 5 0 26 0 i386 rpm 注 xff1a 官网下载时 x
  • 我的世界服务器怎么修改合成表,《我的世界》1.8原版自定义合成表教程 怎么自定义合成表...

    我的世界 1 8原版自定义合成方法 xff0c 很多玩家还不了解 xff0c 今天给大家带来玩家 真名 分享的 我的世界 1 8原版自定义合成表教程 xff0c 一起来看看吧 版本要求1 8 优点 xff1a 自定义 合成表数量可以很大 合
  • 题解 化学反应

    化学反应 Description 有 N 种不同的物质 xff0c 每种物质有两个属性 能量 和 活度 N 种中的任意两种物质都可以发生反应 xff1b 反应放热为两种物质的 能量 之差加一再乘上 活度 的较大值 换句话说 xff0c 设第
  • JAVA字符串中的转义字符

    一 在java字符串中如果出现斜杠 xff0c 1 当成转义字符 34 34 时 xff0c 后面必须接八进制数字进行ASCII转义输出成其它字符 xff0c 2 当成字符串字面值斜杠直接输出时 xff0c 必须用双斜杠 34 34 转义为
  • # ES6基础

    ES6基础 let和const 在以前的js中有一个问题 xff0c 就是只存在函数作用域而不存在局部作用域 let xff0c const的出现改变了这个问题 const就是定义常量 this指向 说默认this指向调用它的对象倒不如说函
  • SpringBoot实现定时器定时处理任务

    最近在项目中遇到了一个问题 对于新建的活动 活动设置了开始时间和结束时间 也就是数据库中的一个状态码的改变而已 但是 这里就有问题了 如何去实现到时间更改活动状态呢 1 刚开始的时候 我想了下定时任务 但是怎么也想不出配置的时间问题 对于活
  • 在雪豹10.6.2(Mac OS X)上安装Oracle10g

    1 Install preparation 基本环境 xff1a Snow Leopard10 6 2 xff0c Oracle10 2 0 4 打开Mac的终端 xff0c 执行 xff1a sudo i 创建oinstall组和orac
  • abaqus2016安装过程中出现error:unable to add abaqus command directory to PATH variable

    请问abaqus2016安装过程中出现error unable to add abaqus command directory to PATH variable是什么原因 xff0c 怎么解决啊 xff0c 总是安装失败 这个问题我解决了
  • MySQL中的 DATE_FORMAT 与 SQL 中的 DATEPART()函数使用介绍

    本小白最近学习MySQL xff0c 因为之前是已经有学过微软大佬的SQL Server所以自认为理解的还是稍快的 滑鸡 xff0c 好了说正事 今天在写一个查询语句时 xff0c 需要用到 一个日期函数 xff1a DATEPART 因为