MySQL中日期型单行函数代码详解

mysql中日期型单行函数:

curdate()current_date() 返回当前日期(精确到日)
参考代码如下:

select curdate()
from dual;
select current_date()
from dual;

———————————–(分割线)————————————

curtime()current_time() 返回当前时间(精确到秒)
参考代码如下:

select curtime()
from dual;
select current_time()
from dual;

———————————–(分割线)————————————

now() / sysdate() / current_timestamp() / localtime() / localtimestamp() 返回当前系统日期时间(精确到秒)
参考代码如下:

select now()
from dual;
select localtime()
from dual;

———————————–(分割线)————————————

year(date) 显示年 / month(date) 显示月 / day(date) 显示日 / hour(time)显示时 / minute(time) 显示分 / second(time) 显示秒
参考代码如下:

select year(curdate()), month(curdate()),day(curdate())
from dual;
select hour(curtime()),minute(now()),second(now())
from dual;

备注:这里的函数,其括号里面的内容来自于前面指出的几个函数。

———————————–(分割线)————————————

week(date)/weekofyear(date) 返回一年中的第几周
参考代码如下:

select week(now())
from dual;
select weekofyear(curdate())
from dual;

———————————–(分割线)————————————

dayofweek(date) 返回周几,注意:周日是1,周一是2,…周六是7
参考代码如下:

select dayofweek(now())  
from dual;

代码编译结果如下:

说明当下是周四

———————————–(分割线)————————————

weekday(date) 返回周几,注意,周1是0,周2是1,…周日是6
参考代码如下:

select weekday(now())  
from dual;

代码编译结果如下:

说明当下是周四

———————————–(分割线)————————————

8.dayname(date) 返回星期:monday,tuesday…sunday
参考代码如下:

select dayname(curdate()),dayname('2020-09-06')  #隐式转换  
from dual;

代码编译结果如下:

备注:
这里用到了一个转换,日期可以被默认转换为字符串,这叫隐式转换。另外补充一下几个常用概念:
格式化:日期转换为字符串
解析:字符串转换为日期
举例代码如下:

字符串转换为日期(解析)(显式转换)

select str_to_date('09/01/2009','%m/%d/%y')
from dual;   

代码编译结果如下:

字符串转换为日期(解析)(显式转换)

select str_to_date('20140422154706','%y%m%d%h%i%s')
from dual;   

代码编译结果如下:

字符串转换为日期(解析)(显式转换)

select str_to_date('2014-04-22 15:47:06','%y-%m-%d %h:%i:%s')
from dual;    

代码编译结果如下:

———————————–(分割线)————————————

9.monthname(date) 返回月份:january…

select monthname(now())  
from dual;

———————————–(分割线)————————————

datediff(date1,date2) 返回date1 – date2的日期间隔
timediff(time1,time2) 返回time1 – time2的时间间隔
参考代码如下:

select datediff('2021-03-06','2021-06-09')  
from dual;

备注:返回的值是两个日期之间所差的天数=date1-date2,若date1在date2的前面,则所得为负值。
代码编译结果如下:

select timediff('2019-06-06 18:23:06','2019-08-06 10:36:45')from dual;

备注:返回的值是两个时间之间所差的【小时数:分钟数:秒数】=time1-time2,若time1在time2的前面,则所得为负值。
代码编译结果如下:

以上就是mysql中日期型单行函数的详细内容,更多关于mysql单行函数的资料请关注www.887551.com其它相关文章!

(0)
上一篇 2022年3月21日
下一篇 2022年3月21日

相关推荐