Mysql入门技能树-时间日期函数(二)-练习篇

阿里云国内75折 回扣 微信号:monov8
阿里云国际,腾讯云国际,低至75折。AWS 93折 免费开户实名账号 代冲值 优惠多多 微信号:monov8 飞机:@monov6

EXTRACT

关于 Extract 操作和其它日期时间函数的对应关系下列说法正确的是

1.extract(mirosecond from date) 相当于 ms(date)
2.extract(second from date) 相当于 second(date)
3.extract(minute from date) 相当于 minute(date)
4.extract(hour from date) 相当于 hour(date)
5.extract(day from date) 相当于 day(date)
6.extract(week from date) 相当于 week(date)
7.extract(month from date) 相当于 month(date)
8.extract(quarter from date) 相当于 quarter(date)
9.extract(year from date) 相当于 year(date)
在这里插入图片描述
答案是D
第一个中mirosecond就写错了应该是microsecondms(date)也不对应该是microsecond(date)


select extract(year from now()),year(now())
union all
select extract(month from now()),month(now())
union all 
select extract(day from now()),day(now())
union all
select extract(hour from now()),hour(now())
union all 
select extract(minute from now()),minute(now())
union all 
select extract(second from now()),second(now())
union all
select extract(microsecond from '2023-01-15 10:22:59.123456'),microsecond('2023-01-15 10:22:59.123456')
union all
select extract(quarter from now()),quarter(now())
union all 
select extract(week from now()),week(now())

依次是年、月、日、时、分、秒、微秒、季度、周
在这里插入图片描述

TIMESTAMP

关于 UNIX 时间戳和 MySQL 的日期时间类型以下说法正确的是

1.UNIX_TIMESTAMP(date) 函数将 date 转换为 UNIX 时间戳
2.FROM_UNIXTIME(timestamp) 将 UNIX 时间戳 timestamp 转换为 date 类型
3.extract(timestamp from date) 可以将 date 转换为 Unix 时间戳
4.extract(datetime from timestamp) 可以将时间戳转换为 datetime
在这里插入图片描述
答案是D

select UNIX_TIMESTAMP(now())
union all
select from_unixtime(1673750012) 

在这里插入图片描述
12正确
EXTRACT() 函数用于返回日期/时间的单独部分比如年、月、日、小时、分钟等等。只是用于提取不存在时间转换用法。34错误

FROM_DAYS

FROM_DAYS 函数返回的是
在这里插入图片描述
答案是A
FROM_DAYS()函数从数字日期值返回一个日期。
FROM_DAYS()函数仅与公历中的日期一起使用。
注意此函数与TO_DAYS()函数相反 。

select to_days('2023-02-15 10:33:32') 
union all
select from_days(738931)

在这里插入图片描述

日期时间计算

以下关于时间和日期数据计算的知识哪些是正确的

1.ADDTIME(time1,time2)函数返回time1加上time2的时间。其中time2是一个表达式也可以是一个数字当time2为一个数字时代表的是秒。
2.SUBTIME(time1,time2)函数返回time1减去time2后的时间。其中time2是一个表达式也可以是一个数字当time2为一个数字时代表的是秒。
3.DATE_ADD(date,INTERVAL expr type)函数返回与date加上INTERVAL时间间隔的日期。Type 与 extract 参数中毫秒之外的部分相同。
4.DATE_SUB(date,INTERVAL expr type)函数返回与date减去INTERVAL时间间隔的日期。Type 与 extract 参数中毫秒之外的部分相同。
5.DATEDIFF(date1,date2) 函数计算两个日期之间相差的天数。
PERIOD_ADD(time,n)函数返回time加上n后的时间。
在这里插入图片描述
答案是C
1正确

SELECT ADDTIME('2023-01-15 10:51:02','1:2:5')
union all
SELECT ADDTIME('2023-01-15 10:51:02',3)

在这里插入图片描述
第一条是加了1小时2分5秒第二条是加了3秒
2正确

SELECT SUBTIME('2023-01-15 11:53:07','1:2:5')
union all
SELECT SUBTIME('2023-01-15 11:53:07',3)

在这里插入图片描述
第一条是减去1小时2分5秒第二条是减去3秒
3正确

select DATE_ADD('2023-01-15 11:02:07',INTERVAL 45 DAY)
union all
select DATE_ADD('2023-01-15 11:02:07',INTERVAL 5 second)

在这里插入图片描述
第一条是加上45天第二条是加上5秒
4正确

select DATE_SUB('2023-03-01 11:02:07',INTERVAL 45 DAY)
union all
select DATE_SUB('2023-01-15 11:02:12',INTERVAL 5 second)

在这里插入图片描述
第一条是减去45天第二条是减去5秒
5正确

SELECT DATEDIFF('2023-03-01','2023-01-15')
union all
SELECT DATEDIFF('2023-01-15','2023-03-01')

在这里插入图片描述
6正确
使用PERIOD_ADD()函数在给定期间增加/减去月份。

select PERIOD_ADD(202212,1)
union all
select PERIOD_ADD(202301,-1)

在这里插入图片描述
本文出现的所有union all只是为了将结果一起展示方便截图不要被误导。

阿里云国内75折 回扣 微信号:monov8
阿里云国际,腾讯云国际,低至75折。AWS 93折 免费开户实名账号 代冲值 优惠多多 微信号:monov8 飞机:@monov6
标签: mysql