zoukankan      html  css  js  c++  java
  • MYSQL中取当前周/月/季/年的第一天与最后一天

    MYSQL中取当前周/月/季/年的第一天与最后一天

    源地址:http://www.2cto.com/database/201308/240281.html

    整理后的sql代码,全部可执行

    1.  
      #当年第一天:
    2.  
      SELECT DATE_SUB(CURDATE(),INTERVAL dayofyear(now())-1 DAY);
    3.  
       
    4.  
      #当年最后一天:
    5.  
      SELECT concat(YEAR(now()),'-12-31');
    6.  
       
    7.  
      #当前week的第一天:
    8.  
      select date_sub(curdate(),INTERVAL WEEKDAY(curdate()) + 1 DAY);
    9.  
       
    10.  
      #当前week的最后一天:
    11.  
      select date_sub(curdate(),INTERVAL WEEKDAY(curdate()) - 5 DAY);
    12.  
       
    13.  
      #前一week的第一天:
    14.  
      select date_sub(curdate(),INTERVAL WEEKDAY(curdate()) + 8 DAY);
    15.  
       
    16.  
      #前一week的最后一天:
    17.  
      select date_sub(curdate(),INTERVAL WEEKDAY(curdate()) + 2 DAY);
    18.  
       
    19.  
      #前两week的第一天:
    20.  
      select date_sub(curdate(),INTERVAL WEEKDAY(curdate()) + 15 DAY);
    21.  
       
    22.  
      #前两week的最后一天:
    23.  
      select date_sub(curdate(),INTERVAL WEEKDAY(curdate()) + 9 DAY);
    24.  
       
    25.  
      #当前month的第一天:
    26.  
      SELECT concat(date_format(LAST_DAY(now()),'%Y-%m-'),'01');
    27.  
       
    28.  
      #当前month的最后一天:
    29.  
      SELECT LAST_DAY(now());
    30.  
       
    31.  
      #前一month的第一天:
    32.  
      SELECT concat(date_format(LAST_DAY(now() - interval 1 month),'%Y-%m-'),'01');
    33.  
       
    34.  
      #前一month的最后一天:
    35.  
      SELECT LAST_DAY(now() - interval 1 month);
    36.  
       
    37.  
      #前两month的第一天:
    38.  
      SELECT concat(date_format(LAST_DAY(now() - interval 2 month),'%Y-%m-'),'01');
    39.  
       
    40.  
      #前两month的最后一天:
    41.  
      SELECT LAST_DAY(now() - interval 2 month);
    42.  
       
    43.  
      #当前quarter的第一天:
    44.  
      select concat(date_format(LAST_DAY(MAKEDATE(EXTRACT(YEAR FROM CURDATE()),1) + interval QUARTER(CURDATE())*3-3 month),'%Y-%m-'),'01');
    45.  
       
    46.  
      #当前quarter的最后一天:
    47.  
      select LAST_DAY(MAKEDATE(EXTRACT(YEAR FROM CURDATE()),1) + interval QUARTER(CURDATE())*3-1 month);
    48.  
       
    49.  
      #前一quarter的第一天:
    50.  
      select concat(date_format(LAST_DAY(MAKEDATE(EXTRACT(YEAR FROM CURDATE()),1) + interval QUARTER(CURDATE())*3-6 month),'%Y-%m-'),'01');
    51.  
       
    52.  
      #前一quarter的最后一天:
    53.  
      select LAST_DAY(MAKEDATE(EXTRACT(YEAR FROM CURDATE()),1) + interval QUARTER(CURDATE())*3-4 month);
    54.  
       
    55.  
      #前两quarter的第一天:
    56.  
      select concat(date_format(LAST_DAY(MAKEDATE(EXTRACT(YEAR FROM CURDATE()),1) + interval QUARTER(CURDATE())*3-9 month),'%Y-%m-'),'01');
    57.  
       
    58.  
      #前两quarter的最后一天:
    59.  
      select LAST_DAY(MAKEDATE(EXTRACT(YEAR FROM CURDATE()),1) + interval QUARTER(CURDATE())*3-7 month);
  • 相关阅读:
    在非controller中获取HttpServletRequest (如在service中获取)
    office 转 html html 转 office
    firewalld的操作
    centos7 安装jdk,mysql,nginx,redis,zookeeper,activemq
    nginx
    学习网站
    Centos7安装搜狗输入法
    “星期几”不同脚本写法
    正则表达式 exec 获取字符串中的汉字
    js和jquery获取父级元素、子级元素、兄弟元素的方法
  • 原文地址:https://www.cnblogs.com/xiangzideheiniu/p/12579479.html
Copyright © 2011-2022 走看看