zoukankan      html  css  js  c++  java
  • MySQL 查询今天、昨天、本周、本月、上一月 、今年数据

    参考链接:

    https://www.cnblogs.com/winner-0715/p/6132838.html

    一、查询天数据

    1.查询今天数据

    利用TO_DAYS函数

    SELECT * FROM student 
    WHERE TO_DAYS(Sage) = TO_DAYS(NOW())

    注:

    DATE_FORMAT(NOW(),'%Y-%m-%d')为一个日期,不能直接进行加减1操作。

      加减某个时间间隔函数date_add()与date_sub()

    date_add('某个日期时间',interval 1 时间种类名);

    2.查询明天的数据

    SELECT * FROM student 
    WHERE DATE_FORMAT(Sage,'%Y-%m-%d') = date_add(DATE_FORMAT(NOW(),'%Y-%m-%d'), interval 1 day)

    3.查询昨天的数据:

    SELECT * FROM student 
    WHERE DATE_FORMAT(Sage,'%Y-%m-%d') = date_add(DATE_FORMAT(NOW(),'%Y-%m-%d'), interval -1 day)

    二、查询周数据

    利用函数week

     可以看到,返回了当前日期所在的周数,再进行匹配

    1.查询本周数据

    SELECT * FROM student 
    WHERE WEEK(DATE_FORMAT(Sage,'%Y-%m-%d')) = WEEK(now())

    2.查询下周数据

    SELECT * FROM student 
    WHERE WEEK(DATE_FORMAT(Sage,'%Y-%m-%d')) = WEEK(now())+1

    三、查询月数据

    SELECT *,DATE_FORMAT(Sage,'%m') s,DATE_FORMAT(now(),'%m') FROM student 

    将月份取出,再进行匹配

    1.查询本月数据

    SELECT * FROM student 
    WHERE DATE_FORMAT(Sage,'%m')= DATE_FORMAT(now(),'%m')

    2.查询下月数据

    SELECT * FROM student 
    WHERE DATE_FORMAT(Sage,'%m')= DATE_FORMAT(now(),'%m')+1
    SELECT * FROM student 
    WHERE PERIOD_DIFF(DATE_FORMAT(NOW(),'%Y%m'), DATE_FORMAT(Sage,'%Y%m'))=-1

    3.查询上月数据

    SELECT * FROM student
    WHERE period_diff(DATE_FORMAT(NOW(),'%Y-%m'),DATE_FORMAT(Sage,'%Y-%m'))=1

     四、查询年数据,与月同理

    SELECT *,DATE_FORMAT(Sage,'%Y') s,DATE_FORMAT(now(),'%Y') FROM student 

     再进行匹配

    如,我想查找30年前出生的人,将当前年份减去30

    SELECT * FROM student 
    WHERE DATE_FORMAT(Sage,'%Y') =DATE_FORMAT(now(),'%Y')-30

  • 相关阅读:
    Web Site 与 Web Application 的区别
    Jquery获取text,areatext,radio,checkbox,select值
    C#怎么样操作world文档中的文字型窗体域?
    DataFormatString 用法
    overload和override的区别
    Apollo安装
    工控机基础
    CAN总线技术基础
    dd命令_Linux dd命令:复制(拷贝)文件,并对原文件进行转换
    Unity2021零基础入门教程
  • 原文地址:https://www.cnblogs.com/jescs/p/12199543.html
Copyright © 2011-2022 走看看