• 企业400电话
  • 微网小程序
  • AI电话机器人
  • 电商代运营
  • 全 部 栏 目

    企业400电话 网络优化推广 AI电话机器人 呼叫中心 网站建设 商标✡知产 微网小程序 电商运营 彩铃•短信 增值拓展业务
    详解MySql Date函数

    下面是MySQL中最重要的内建函数

    函数  描述

    NOW()   返回当前的日期和时间

    NOW() 返回当前的日期和时间。
    语法
    NOW()
    -- 实例
    -- 下面是 SELECT 语句:
    SELECT NOW(),CURDATE(),CURTIME()
    结果如下所示:
    NOW()   CURDATE()   CURTIME()
    2018-06-27 14:25:34   2018-06-27 14:25:34
    -- 实例
    -- 下面的 SQL 创建带有日期时间列(OrderDate)的 "Orders" 表:
    CREATE TABLE Orders
    (
    OrderId int NOT NULL,
    ProductName varchar(50) NOT NULL,
    OrderDate datetime NOT NULL DEFAULT NOW(),
    PRIMARY KEY (OrderId)
    )
    -- 请注意,OrderDate 列规定 NOW() 作为默认值。作为结果,当您向表中插入行时,当前日期和时间自动插入列中。
    -- 现在,我们想要在 "Orders" 表中插入一条记录:
    INSERT INTO Orders (ProductName) VALUES ('Jarlsberg Cheese')
    -- "Orders" 表将如下所示:
    OrderId   ProductName   OrderDate
    1   Jarlsberg Cheese   2018-06-11 14:36:55

    CURDATE()   返回当前的日期

    -- CURDATE() 返回当前的日期。
    -- 实例
    -- 下面是 SELECT 语句:
    SELECT NOW(),CURDATE(),CURTIME()
    结果如下所示:
    NOW()   CURDATE()   CURTIME()
    2018-06-27 14:25:34   2018-06-27 14:25:34
    -- 实例
    -- 下面的 SQL 创建带有日期时间列(OrderDate)的 "Orders" 表:
    CREATE TABLE Orders
    (
    OrderId int NOT NULL,
    ProductName varchar(50) NOT NULL,
    OrderDate datetime NOT NULL DEFAULT CURDATE(),
    PRIMARY KEY (OrderId)
    )
    -- 请注意,OrderDate 列规定 CURDATE() 作为默认值。作为结果,当您向表中插入行时,当前日期和时间自动插入列中。
    -- 现在,我们想要在 "Orders" 表中插入一条记录:
    INSERT INTO Orders (ProductName) VALUES ('Jarlsberg Cheese')
    -- "Orders" 表将如下所示:
    OrderId   ProductName   OrderDate
    1   Jarlsberg Cheese   2018-06-11 14:36:55

    CURTIME()   返回当前的时间

    -- CURTIME() 返回当前的日期。
    -- 实例
    -- 下面是 SELECT 语句:
    SELECT NOW(),CURDATE(),CURTIME()
    -- 结果如下所示:
    NOW()   CURDATE()   CURTIME()
    2018-06-27 14:25:34   2018-06-27 14:25:34

    DATE()  提取日期或日期/时间表达式的日期部分

    -- DATE() 函数提取日期或日期/时间表达式的日期部分。
    -- 实例
    -- 假设我们有如下的 "Orders" 表:
    OrderId   ProductName   OrderDate
    1   Jarlsberg Cheese   2018-06-27 14:53:44.657
    -- 下面是 SELECT 语句:
    SELECT ProductName, DATE(OrderDate) AS OrderDate
    FROM Orders
    WHERE OrderId=1
    -- 结果如下所示:
    ProductName   OrderDate
    Jarlsberg Cheese   2018-06-27

    EXTRACT()   返回日期/时间的单独部分

    -- EXTRACT() 函数用于返回日期/时间的单独部分,比如年、月、日、小时、分钟等等。
    -- 语法
    -- EXTRACT(unit FROM date)
    -- date 参数是合法的日期表达式。unit 参数可以是下列的值:
    Unit 值
    MICROSECOND
    SECOND
    MINUTE
    HOUR
    DAY
    WEEK
    MONTH
    QUARTER
    YEAR
    SECOND_MICROSECOND
    MINUTE_MICROSECOND
    MINUTE_SECOND
    HOUR_MICROSECOND
    HOUR_SECOND
    HOUR_MINUTE
    DAY_MICROSECOND
    DAY_SECOND
    DAY_MINUTE
    DAY_HOUR
    YEAR_MONTH
    -- 实例
    -- 假设我们有如下的 "Orders" 表:
    OrderId   ProductName   OrderDate
    1   Jarlsberg Cheese   2018-06-2715:03:01
    -- 下面是 SELECT 语句:
    SELECT EXTRACT(YEAR FROM OrderDate) AS OrderYear,
    EXTRACT(MONTH FROM OrderDate) AS OrderMonth,
    EXTRACT(DAY FROM OrderDate) AS OrderDay,
    FROM Orders
    WHERE OrderId=1
    -- 结果如下所示:
    OrderYear   OrderMonth   OrderDay
    2018   06            27

    DATE_ADD()  向日期添加指定的时间间隔

    -- DATE_ADD() 函数向日期添加指定的时间间隔。
    -- 语法
    -- DATE_ADD(date,INTERVAL expr type)
    -- date 参数是合法的日期表达式。expr 参数是您希望添加的时间间隔。
    -- type 参数可以是下列值:
    Type 值
    MICROSECOND
    SECOND
    MINUTE
    HOUR
    DAY
    WEEK
    MONTH
    QUARTER
    YEAR
    SECOND_MICROSECOND
    MINUTE_MICROSECOND
    MINUTE_SECOND
    HOUR_MICROSECOND
    HOUR_SECOND
    HOUR_MINUTE
    DAY_MICROSECOND
    DAY_SECOND
    DAY_MINUTE
    DAY_HOUR
    YEAR_MONTH
    -- 实例
    -- 假设我们有如下的 "Orders" 表:
    OrderId   ProductName   OrderDate
    1   Jarlsberg Cheese   2018-06-27 15:02:47
    -- 现在,我们想要向 "OrderDate" 添加 45 天,这样就可以找到付款日期。
    -- 我们使用下面的 SELECT 语句:
    SELECT OrderId,DATE_ADD(OrderDate,INTERVAL 45 DAY) AS OrderPayDate
    FROM Orders
    -- 结果:
    OrderId   OrderPayDate
    1   2018-08-11 15:02:47

    DATE_SUB()  从日期减去指定的时间间隔

    DATE_SUB() 函数从日期减去指定的时间间隔。
    语法
    DATE_SUB(date,INTERVAL expr type)
    date 参数是合法的日期表达式。expr 参数是您希望添加的时间间隔。
    type 参数可以是下列值:
    Type 值
    MICROSECOND
    SECOND
    MINUTE
    HOUR
    DAY
    WEEK
    MONTH
    QUARTER
    YEAR
    SECOND_MICROSECOND
    MINUTE_MICROSECOND
    MINUTE_SECOND
    HOUR_MICROSECOND
    HOUR_SECOND
    HOUR_MINUTE
    DAY_MICROSECOND
    DAY_SECOND
    DAY_MINUTE
    DAY_HOUR
    YEAR_MONTH
    实例
    假设我们有如下的 "Orders" 表:
    OrderId   ProductName   OrderDate
      Jarlsberg Cheese   2018-06-27 15:02:47
    现在,我们想要向 "OrderDate" 减去 5 天。
    我们使用下面的 SELECT 语句:
    SELECT OrderId,DATE_SUB(OrderDate,INTERVAL 5 DAY) AS SubtractDate
    FROM Orders
    结果:
    OrderId   SubtractDate
       2018-06-22 15:02:47

     DATEDIFF() 返回两个日期之间的天数

    DATEDUFF() 返回两个日期之间的天数
    实例:
    SELECT DATEDIFF('2018-11-29','2018-11-30') AS DiffDate
    结果:
    DiffDate
    -1

    DATE_FORMAT()   用不同的格式显示日期/时间

    DATE_FORMAT() 用不同的格式显示日期/时间
    实例:
    SELECT DATE_FORMAT(NOW(),'%b %d %Y %h:%i %p');
    # DATE_FORMAT(NOW(),'%b %d %Y %h:%i %p')
    'Jun 27 2018 03:12 PM'
    SELECT DATE_FORMAT(NOW(),'%m-%d-%Y');
    # DATE_FORMAT(NOW(),'%m-%d-%Y')
    '06-27-2018'
    SELECT DATE_FORMAT(NOW(),'%d %b %y');
    # DATE_FORMAT(NOW(),'%d %b %y')
    '27 Jun 18'
    SELECT DATE_FORMAT(NOW(),'%d %b %Y %T:%f');
    # DATE_FORMAT(NOW(),'%d %b %Y %T:%f')
    '27 Jun 2018 15:15:44:000000'
    可以使用的格式有:
    格式   描述
    %a   缩写星期名
    %b   缩写月名
    %c   月,数值
    %D   带有英文前缀的月中的天
    %d   月的天,数值(00-31)
    %e   月的天,数值(0-31)
    %f   微秒
    %H   小时(00-23)
    %h   小时(01-12)
    %I   小时(01-12)
    %i   分钟,数值(00-59)
    %j   年的天(001-366)
    %k   小时(0-23)
    %l   小时(1-12)
    %M   月名
    %m   月,数值(00-12)
    %p   AM 或 PM
    %r   时间,12-小时(hh:mm:ss AM 或 PM)
    %S   秒(00-59)
    %s   秒(00-59)
    %T   时间, 24-小时(hh:mm:ss)
    %U   周(00-53)星期日是一周的第一天
    %u   周(00-53)星期一是一周的第一天
    %V   周(01-53)星期日是一周的第一天,与 %X 使用
    %v   周(01-53)星期一是一周的第一天,与 %x 使用
    %W   星期名
    %w   周的天(0=星期日, 6=星期六)
    %X   年,其中的星期日是周的第一天,4 位,与 %V 使用
    %x   年,其中的星期一是周的第一天,4 位,与 %v 使用
    %Y   年,4 位
    %y   年,2 位

     下面是数据库中存储日期的数据类型

    DATE - 格式:YYYY-MM-DD
    DATETIME - 格式:YYYY-MM-DD HH:MM:SS
    TIMESTAMP - 格式:YYYY-MM-DD HH:MM:SS
    YEAR - 格式:YYYY 或 YY

     总结:日期函数有点乱,其实我觉得记住几个经常用到的就可以了,不一定非要全部记住,必定谁都没有过目不忘的本领,而且也不会出题考试,工作中用到哪个记不住查一下就可以了

    以上所述是小编给大家介绍的MySql Date函数,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对脚本之家网站的支持!

    您可能感兴趣的文章:
    • Mysql常用函数大全(分类汇总讲解)
    • MySQL自定义函数简单用法示例
    • MYSQL自定义函数判断是否正整数的实例代码
    • MySQL中的排序函数field()实例详解
    • MySQL高效模糊搜索之内置函数locate instr position find_in_set使用详解
    • mysql中find_in_set()函数的使用及in()用法详解
    • MySQL使用集合函数进行查询操作实例详解
    • 详解数据库_MySQL: mysql函数
    上一篇:MySQL数据表基本操作实例详解
    下一篇:MySQL连接查询实例详解
  • 相关文章
  • 

    © 2016-2020 巨人网络通讯 版权所有

    《增值电信业务经营许可证》 苏ICP备15040257号-8

    详解MySql Date函数 详解,MySql,Date,函数,详解,