zoukankan      html  css  js  c++  java
  • MYSQL学习笔记三:日期和时间函数

    MYSQL学习笔记三:日期和时间函数

    1. 获取当前日期的函数和获取当前时间的函数

    /*获取当前日期的函数和获取当前时间的函数。将日期以'YYYY-MM-DD'或者’YYYYMMDD’格式返回

    */

    #CURDATE()CURRENT_DATE()作用同样,返回同样的系统当前日期

    #CURDATE()+0则将当前日期值转换成数值类型

    SELECT CURDATE(), CURRENT_DATE(), CURDATE()+0;

     

    /* CURTIME()CURRENT_TIME()作用同样。将当前时间以'HH:MM:SS'或者’HHMMSS’格式返回

    */

    #CURRENT_TIME()+0表示以数值形式HHMMSS格式显示

    SELECT CURTIME(), CURRENT_TIME(), CURRENT_TIME()+0;

     

    2. 获取当前日期与时间的函数

    #从结果能够看出。以下四个函数的功能同样

    SELECT CURRENT_TIMESTAMP(),LOCALTIME(),NOW(),SYSDATE();

     

    3. 获取月份的函数

    #MONTH(date):函数返回date相应的月份,范围从1~12

    #MONTHNAME(date):函数返回日期date相应月份的英文全名,如March

    SELECT MONTH(NOW()), MONTHNAME(NOW());

     

    4. 获取星期的函数

    #DAYNAME(d):返回d相应的工作日的英文名称,如Sunday, Monday

    #DAYOFWEEK(d):返回d相应的一周中的索引(位置)。1表示周日,2表示周一,...,7表示周六

    #WEEKDAY(d):返回d相应的工作日的索引。

    0表示周一,1表示周二,...6表示周日

    SELECT DAYNAME(NOW()), DAYOFWEEK(NOW()), WEEKDAY(NOW());

     

    5. 获取星期数的函数

    #WEEK(d):计算日期d是一年中的第几周。

    #WEEK(d,mode):指定mode是否起始于周日或者周一,mode被省略。则使用default_week_format系统自变量的值0

    #WEEK函数中Mode參数取值

    Mode

    一周的第一天

    范围

    Week 1为第一周

    0

    周日

    0~53

    本年度中有一个周日

    1

    周一

    0~53

    本年度中有3天以上

    2

    周日

    1~53

    本年度中有一个周日

    3

    周一

    1~53

    本年度中有3天以上

    4

    周日

    0~53

    本年度中有3天以上

    5

    周一

    0~53

    本年度中有一个周一

    6

    周日

    1~53

    本年度中有3天以上

    7

    周一

    1~53

    本年度中有一个周一

    #WEEKOFYEAR(d):计算某天d位于一年中的第几周,范围是1~53。相当于WEEK(d,3)

    SELECT WEEK(NOW()), WEEK(NOW(),0), WEEK(NOW(),1), WEEKOFYEAR(NOW()), WEEK(NOW(),3);

     

    6. 获取天数函数

    #DAYOFYEAR(d):返回d是一年中的第几天,范围从1~366

    #DAYOFMONTH(d):返回d是一个月中的第几天。范围是1~31

    SELECT DAYOFYEAR(NOW()), DAYOFMONTH(NOW());

     

    7. 获取年份、季度、月、小时、分钟和秒钟的函数

    #YEAR(date):返回date相应的年份,范围是1970~2069

    #QUARTER(date):返回date相应的一年中的季度,范围1~4

    #MONTH(date):函数返回date相应的月份,范围从1~12

    #MONTHNAME(date):函数返回日期date相应月份的英文全名。如March

    #HOUR(time):返回time相应的小时数。范围是0~24

    #MINUTE(time):返回time相应的分钟数,范围是从0~59

    #SECOND(time):返回time相应的秒数,范围是0~59

    SELECT

    YEAR(CURDATE()) as yr,

    QUARTER(CURDATE()) as qt,

    MONTH(CURDATE()) as mon,

    MONTHNAME(CURDATE()) as mon_name,

    HOUR(CURTIME()) as hrs,

    MINUTE(CURTIME()) as min,

    SECOND(CURTIME()) as snd;

     

    8. 获取日期的指定值函数EXTRACT(type FROM date)

    #用于从date中依照type提取一部分值

    SELECT

    EXTRACT(YEAR FROM NOW()) as year,

    EXTRACT(QUARTER FROM NOW()) as quarter,

    EXTRACT(MONTH FROM NOW()) as month,

    EXTRACT(DAY FROM NOW()) as day,

    EXTRACT(HOUR FROM NOW()) as hour,

    EXTRACT(MINUTE FROM NOW()) as minute,

    EXTRACT(SECOND FROM NOW()) as second,

    EXTRACT(YEAR_MONTH FROM NOW()) as year_mon

    ;

     

    9. 时间和秒钟转换函数TIME_TO_SEC(time)

    #转换公式:<小时*3600+分钟*60+>

    #TIME_TO_SEC(time):返回已转化成秒的time參数

    #SEC_TO_TIME(seconds):返回被转化为小时、分钟和秒数的seconds參数值

    SELECT 

    CURTIME() as time, 

    TIME_TO_SEC(CURTIME()) as second,

    SEC_TO_TIME(TIME_TO_SEC(CURTIME())) as time;

     


    .....待续


    本文尚未完毕。同于时间关系。后面会续上。谢谢大家关照!

    假设你们有更好的建议,请发邮件到我私人邮箱: david.louis.tian@outllook.com

    版权@: 本文系本人原创,转载请标明出处,谢谢!


  • 相关阅读:

    jQuery post使用变量作参数名
    线性结构____二叉堆
    Java虚拟机
    spring在线生成
    树形结构_红黑树:平衡2X 哈夫曼树:最优2X
    线性结构____双链表/栈/队列
    Java中的String,StringBuilder,StringBuffer三者的区别
    JPress的CMS系统在Window下的部署和使用
    List之contains方法
  • 原文地址:https://www.cnblogs.com/yutingliuyl/p/6921564.html
Copyright © 2011-2022 走看看