目录
1. 获取当前时间和日期
2. 获取当前日期
3. 获取当前时间
4. 获取单独的年/月/日/时/分/秒
5. 添加时间间隔 date_add ( )
6. 格式化日期 date_format ( )
7. 字符串转日期 str_to_date ()
8. 第几天 dayofxx
9. 当月最后一天 last_day ( )
10. 日期差 datediff ( )
11. 时间差 timediff ( )
1. 获取当前时间和日期
now();
sysdata ( ) ;
区别:
select now ( ) ; 输出的时间点是开始执行 select 关键词的时间;
select sysdate();输出的的时间点是开始执行 sysdate 函数的时间点;
2. 获取当前日期
curdata();
current_date();
3. 获取当前时间
curtime ( ) ;
current_time;
current_time ( ) ;
4. 获取单独的年/月/日/时/分/秒
获取单独的年:year ( now ( ) ) ;
获取单独的月:month ( now ( ) ) ;
获取单独的日:day ( now ( ) ) ;
获取单独的时:hour ( now ( ) ) ;
获取单独的分:minute ( now ( ) ) ;
获取单独的秒:second ( now ( ) ) ;
5. 添加时间间隔 date_add ( )
增加时间:date_add ( ' 时间 ' , interval 数字 单位) ;
减少时间:date_sub ( ' 时间 ' , interval 数字 单位) 或者 date_add ( ' 时间 ' , interval 负数 单位) ;
另外单位还有 quarter(季度),week(周)等;
还有复合单位;year_month(几年几月之后) , month_week (几月几周之后)等;
6. 格式化日期 date_format ( )
一般用于查询操作;
SQL语句:date_format (日期,格式 ),将时间按照指定格式输出 ;
另外,在使用 now()函数获取当前日期和时间时,底层也调用了date_format(),只不过这是一种隐式转换,而且隐式转换的前提是日期必须为 date 标准格式;
7. 字符串转日期 str_to_date ()
一般用于插入操作;
在后面学习插入数据时,插入date类型的数据可以
(1)使用 str_date()将 ‘ %h /%i/ %d/ ’ 字符串格式的日期转换为 ‘ %h -%i- %d/ ’ 字符串格式的日期,再默认转换为date格式的日期;
(2)将 ‘ %h -%i- %d/ ’ 字符串格式的日期,默认转换为date格式的日期;
隐式转换建立在MySQL标准格式(%h -%i- %d/)上;
8. 第几天 dayofxx
一年中的第几天:dayofyear ( )
一月中的第几天:dayofmonth ( )
一周中的第几天:dayofweek ( )
9. 当月最后一天 last_day ( )
10. 日期差 datediff ( )
只与日期有关,与时间无关;
11. 时间差 timediff ( )
时间差与日期有关,因为是计算的结果是以 ‘ -时-分-秒 ’ 的格式输出;