目录
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 ( )
时间差与日期有关,因为是计算的结果是以 ‘ -时-分-秒 ’ 的格式输出;
