zoukankan      html  css  js  c++  java
  • MySql取得日期(前一天、某一天)

    在测试一个统计表格,发现每次手写一个地址实在很烦,干脆就搞个自动计算好时间区间的东西。以下内容作为收获吧!

    取得当天:

    SELECT curdate();

    mysql> SELECT curdate();
    +------------+
    | curdate()  |
    +------------+
    | 2013-07-29 |
    +------------+

    取得当前日期:

    mysql> select now();
    +---------------------+
    | now()               |
    +---------------------+
    | 2013-07-29 22:10:40 |
    +---------------------+

    取得前一天:

    mysql> select date_sub(curdate(),interval 1 day);
    +------------------------------------+
    | date_sub(curdate(),interval 1 day) |
    +------------------------------------+
    | 2013-07-28                         |
    +------------------------------------+

    括号中为当天时间的前一天,如果统计前几天就将括号中的’1’改成相应的天数。如果要算月或年,直接将day改为month或year即可

     取得前一天的年份:

    mysql> SELECT YEAR(DATE_SUB(CURDATE(),INTERVAL 1 DAY));
    +------------------------------------------+
    | YEAR(DATE_SUB(CURDATE(),INTERVAL 1 DAY)) |
    +------------------------------------------+
    |                                     2013 |
    +------------------------------------------+

     date_sub()函数的例子:

    今天是2013年5月20日。

    date_sub('2012-05-25',interval 1 day) 表示 2012-05-24
    date_sub('2012-05-25',interval 0 day) 表示 2012-05-25
    date_sub('2012-05-25',interval -1 day) 表示 2012-05-26
    date_sub('2012-05-31',interval -1 day) 表示 2012-06-01
    date_sub(curdate(),interval 1 day) 表示 2013-05-19
    date_sub(curdate(),interval -1 day) 表示 2013-05-21
    date_sub(curdate(),interval 1 month) 表示 2013-04-20
    date_sub(curdate(),interval -1 month) 表示 2013-06-20
    date_sub(curdate(),interval 1 year) 表示 2012-05-20
    date_sub(curdate(),interval -1 year) 表示 2014-05-20
  • 相关阅读:
    窗口切换快捷键
    简单排序算法
    (转)Zen Coding 让 Notepad++ 代码书写健步如飞
    (转)图解SQL的Join
    第6章 AJAX
    今天是五四青年节
    看到的php的小知识
    (转)Notepad++配合QuickText打造快速高效的文本编辑器
    一种非常好的产生"唯一"临时文件的办法
    (转)linux 目录结构及其含义
  • 原文地址:https://www.cnblogs.com/Lihao2013/p/6141772.html
Copyright © 2011-2022 走看看