mysql - 如何在mysql中从一种日期格式转换为另一种格式

标签 mysql date-comparison

我正在使用 MySQL,我想从列中获取前一周的所有日期,比如 xyz,它是日期类型,格式为 YYYY-MM-DD 。但是,当我使用

select 
    * 
from 
    tablename 
where 
    xyz > date_sub(curdate(),INTERVAL 1 week);

我得到的日期不在过去 1 周内。我得到一个月后的日期和一些随机日期。

最佳答案

您的查询正在提取所有 xyz(我假设是您的日期列)比一周前更新的记录。这实际上可能是 future 的记录。如果您想专门查看上周的内容,则需要使用 between 关键字。

select
    *
from
    tablename
where
    xyz between date_sub(curdate(), INTERVAL 1 week) and curdate()

关于mysql - 如何在mysql中从一种日期格式转换为另一种格式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44962596/

相关文章:

php - 如何在mysql中获取两个日期递增1个月的记录

mysql - 多个表导致单个查询

c# - 找不到 OdbcConnection DataName 和 DataSource

php - 选择多个表的查询

php - 从 "Y-m-d H:i:s"格式的日期数组中获取最近的日期

mysql - 使用大量 NOT IN 语句优化查询

json - 在 Moment.js 中检查日期是否大于 0001-01-01

java - 如何将日期字符串与当前日期进行比较?

java - 如何获得两个 ZonedDateTime 实例中的最大值?

java - 在java中比较日期与Xpath