mysql中日期型单行函数:
curdate()
或current_date()
返回当前日期(精确到日)
参考代码如下:
1
2
|
select curdate()
from dual;
|
1
2
|
select current_date ()
from dual;
|
-----------------------------------(分割线)------------------------------------
curtime()
或current_time()
返回当前时间(精确到秒)
参考代码如下:
1
2
|
select curtime()
from dual;
|
1
2
|
select current_time ()
from dual;
|
-----------------------------------(分割线)------------------------------------
now()
/ sysdate()
/ current_timestamp()
/ localtime()
/ localtimestamp()
返回当前系统日期时间(精确到秒)
参考代码如下:
1
2
|
select now()
from dual;
|
1
2
|
select localtime()
from dual;
|
-----------------------------------(分割线)------------------------------------
year(date)
显示年 / month(date)
显示月 / day(date)
显示日 / hour(time)
显示时 / minute(time)
显示分 / second(time)
显示秒
参考代码如下:
1
2
|
select year (curdate()), month (curdate()), day (curdate())
from dual;
|
1
2
|
select hour (curtime()), minute (now()), second (now())
from dual;
|
备注:这里的函数,其括号里面的内容来自于前面指出的几个函数。
-----------------------------------(分割线)------------------------------------
week(date)
/weekofyear(date)
返回一年中的第几周
参考代码如下:
1
2
|
select week(now())
from dual;
|
1
2
|
select weekofyear(curdate())
from dual;
|
-----------------------------------(分割线)------------------------------------
dayofweek(date)
返回周几,注意:周日是1,周一是2,…周六是7
参考代码如下:
1
2
|
select dayofweek(now())
from dual;
|
代码编译结果如下:
说明当下是周四
-----------------------------------(分割线)------------------------------------
weekday(date)
返回周几,注意,周1是0,周2是1,…周日是6
参考代码如下:
1
2
|
select weekday(now())
from dual;
|
代码编译结果如下:
说明当下是周四
-----------------------------------(分割线)------------------------------------
8.dayname(date)
返回星期:monday,tuesday…sunday
参考代码如下:
1
2
|
select dayname(curdate()),dayname( '2020-09-06' ) #隐式转换
from dual;
|
代码编译结果如下:
备注:
这里用到了一个转换,日期可以被默认转换为字符串,这叫隐式转换。另外补充一下几个常用概念:
格式化:日期转换为字符串
解析:字符串转换为日期
举例代码如下:
字符串转换为日期(解析)(显式转换)
1
2
|
select str_to_date( '09/01/2009' , '%m/%d/%y' )
from dual;
|
代码编译结果如下:
字符串转换为日期(解析)(显式转换)
1
2
|
select str_to_date( '20140422154706' , '%y%m%d%h%i%s' )
from dual;
|
代码编译结果如下:
字符串转换为日期(解析)(显式转换)
1
2
|
select str_to_date( '2014-04-22 15:47:06' , '%y-%m-%d %h:%i:%s' )
from dual;
|
代码编译结果如下:
-----------------------------------(分割线)------------------------------------
9.monthname(date)
返回月份:january…
1
2
|
select monthname(now())
from dual;
|
-----------------------------------(分割线)------------------------------------
datediff(date1,date2)
返回date1 - date2的日期间隔timediff(time1,time2)
返回time1 - time2的时间间隔
参考代码如下:
1
2
|
select datediff( '2021-03-06' , '2021-06-09' )
from dual;
|
备注:返回的值是两个日期之间所差的天数=date1-date2,若date1在date2的前面,则所得为负值。
代码编译结果如下:
1
2
|
select timediff( '2019-06-06 18:23:06' , '2019-08-06 10:36:45' )
from dual;
|
备注:返回的值是两个时间之间所差的【小时数:分钟数:秒数】=time1-time2,若time1在time2的前面,则所得为负值。
代码编译结果如下:
以上就是mysql中日期型单行函数的详细内容,更多关于mysql单行函数的资料请关注服务器之家其它相关文章!
原文链接:https://blog.csdn.net/qq_51735681/article/details/118001620