mysql 查询当天、本周,本月,上一个月的数据

要查询当天、本周、本月或上一个月的数据,可以使用MySQL中的DATE_FORMAT()函数和NOW()函数,结合WHERE子句进行过滤。

下面是一些示例说明:

1. 查询当天的数据

SELECT * FROM table_name WHERE DATE_FORMAT(date_column, '%Y-%m-%d') = DATE_FORMAT(NOW(), '%Y-%m-%d');
  • table_name: 要查询的表名;
  • date_column: 存储日期的列名;
  • %Y-%m-%d: 格式化日期的字符串,按照年-月-日格式化;
  • NOW(): 返回当前的日期和时间。

上述代码使用了DATE_FORMAT()函数将日期格式化为年-月-日的字符串进行比较,与当天的日期做比较,以此筛选当天的数据。

2. 查询本周的数据

SELECT * FROM table_name WHERE WEEK(date_column) = WEEK(NOW());
  • table_name: 要查询的表名;
  • date_column: 存储日期的列名;
  • WEEK(): 返回日期所在年份的周数;
  • NOW(): 返回当前的日期和时间。

上述代码查询了本周的数据。通过将日期的周数与当前日期的周数进行比较,可以筛选出本周的数据。

3. 查询本月的数据

SELECT * FROM table_name WHERE YEAR(date_column) = YEAR(NOW()) AND MONTH(date_column) = MONTH(NOW());
  • table_name: 要查询的表名;
  • date_column: 存储日期的列名;
  • YEAR(): 返回日期所在年份;
  • MONTH(): 返回日期所在月份;
  • NOW(): 返回当前的日期和时间。

上述代码筛选了本月的数据。通过将日期的年份和月份与当前日期的年份和月份进行比较,可以筛选出本月的数据。

4. 查询上一个月的数据

SELECT * FROM table_name WHERE YEAR(date_column) = YEAR(CURDATE() - INTERVAL 1 MONTH) AND MONTH(date_column) = MONTH(CURDATE() - INTERVAL 1 MONTH);
  • table_name: 要查询的表名;
  • date_column: 存储日期的列名;
  • YEAR(): 返回日期所在年份;
  • MONTH(): 返回日期所在月份;
  • CURDATE(): 返回当前的日期;
  • INTERVAL 1 MONTH: 获取上一个月的日期。

上述代码使用CURDATE()函数获取当前日期,并使用INTERVAL 1 MONTH获取上一个月的日期。对于日期所在的年份和月份,分别与获取的上一个月的年份和月份进行比较,就可以筛选出上一个月的数据。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:mysql 查询当天、本周,本月,上一个月的数据 - Python技术站

(0)
上一篇 2023年5月22日
下一篇 2023年5月22日

相关文章

  • MySQL DBA 常用手册小结

    MySQL DBA 常用手册小结攻略 概述 MySQL DBA 常用手册是一个针对数据库监控和性能优化的指南,它包含了数据库管理的各个方面,如服务器配置和维护、备份和恢复、监视和优化等。本指南旨在为DBA提供一些实用技术和工具,以帮助他们更有效地管理MySQL服务器。 目录 服务器配置与维护 备份和恢复 监视和性能优化 1. 服务器配置与维护 安装和配置My…

    database 2023年5月22日
    00
  • SQL Server连接失败错误及解决第3/5页

    SQL Server连接失败错误及解决攻略 引言 在使用SQL Server进行数据管理和操作时,有时会遇到连接失败的错误。这些错误可能是由于多种原因导致的,包括网络故障、服务器配置问题、安全设置等等。本篇文章将讲解一些可能的原因和解决方法,以帮助你快速解决连接失败的问题。 连接失败原因及解决方法 1. 网络故障 当你尝试连接到SQL Server时,可能会…

    database 2023年5月21日
    00
  • SQL通用存储过程分页,支持多表联合

    SQL通用存储过程分页是指能够在多表联合查询时,进行通用的分页查询操作。这种分页操作可以应用于多种数据库类型,如MySQL、Oracle、SQL Server等。下面将详细讲解如何进行SQL通用存储过程分页。 1.创建存储过程 创建一个名为Paging的存储过程。在存储过程中,使用了一些重要的参数,如表名、排序列、第几页、每页行数。下面是实现代码。 CREA…

    database 2023年5月22日
    00
  • SQL 计算两个日期之间相差的秒数、分钟数和小时数

    计算两个日期之间相差的秒数、分钟数和小时数可以使用DATEDIFF()函数和TIME_TO_SEC()函数来实现。 计算相差的秒数 计算两个日期之间相差的秒数可以使用以下SQL语句: SELECT TIMESTAMPDIFF(SECOND, ‘2022-01-01 12:00:00’, ‘2022-01-01 12:01:30’) AS diff_secon…

    database 2023年3月27日
    00
  • 详解SQL Server中的事务与锁问题

    SQL Server中的事务与锁问题 什么是事务? 事务(Transaction)是指作为单个逻辑工作单元执行的一系列操作,这一系列操作必须同时全部成功或全部失败。 在SQL Server中,可以使用BEGIN TRANSACTION、COMMIT TRANSACTION和ROLLBACK TRANSACTION三个语句来控制事务的开始、提交和回滚。 事务的…

    database 2023年5月21日
    00
  • MySQL中日期和时间戳互相转换的函数和方法

    介绍一下MySQL中日期和时间戳互相转换的函数和方法。 首先,MySQL中有三种日期/时间类型:DATE、TIME以及DATETIME。DATE类型存储日期,格式为“YYYY-MM-DD”;TIME类型存储时间,格式为“HH:MM:SS”;DATETIME类型存储日期和时间,格式为“YYYY-MM-DD HH:MM:SS”。 其次,MySQL中的时间戳是指U…

    database 2023年5月22日
    00
  • MySQL 逻辑备份与恢复测试的相关总结

    MySQL 逻辑备份与恢复测试的相关总结攻略 概述 MySQL 逻辑备份是指将数据库中数据导出为标准的 SQL 脚本的过程,而恢复则是将导出的 SQL 脚本运行到 MySQL 服务器上,以便将数据库中的数据恢复到原始状态。MySQL 逻辑备份有利于数据的迁移、备份和还原。本文将总结关于 MySQL 逻辑备份与恢复测试的相关经验,并提供相应的攻略。 MySQL…

    database 2023年5月21日
    00
  • Mysql慢查询操作梳理总结

    Mysql慢查询操作梳理总结 什么是慢查询? 慢查询是指MySQL查询操作执行时间过长的查询语句,会导致数据库服务器的性能问题。MySQL提供了一个日志功能来记录所有查询操作的执行时间(慢查询日志文件)。通过慢查询日志文件,我们能够定位到哪些查询语句需要进行性能优化。 开启慢查询日志 在MySQL中,在my.cnf配置文件中开启慢查询日志功能。编辑my.cn…

    database 2023年5月19日
    00
合作推广
合作推广
分享本页
返回顶部