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

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

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

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

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

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

SQL Server 的 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

 休息明天继续 ~_~

猜你喜欢

转载自www.cnblogs.com/wanguncle/p/10497675.html
今日推荐