php - MYSQL SELECT 记录早于 1 年前

标签 php mysql date

我试图从我的数据库中获取早于 1 年的所有记录的列表,expired_contract 字段有下一个信息。

expired_contract DATE NOT NULL

所以它采用下一种格式的 DATE:YEAR-MM-DD,接下来我有 sql,但我无法让它正常工作。

$sql = "SELECT * 
        FROM My_Contracte 
        WHERE expired_contract >= DATE_SUB(NOW(),INTERVAL 1 YEAR) 
        ORDER BY id_contract DESC";

我尝试了很多“WHERE”命令,但没有一个像我预期的那样工作。你能帮我解决这个问题吗?我研究了大约 5 个小时,我需要确切的命令才能让它工作。

$sql 给了我一些东西,但我把它弄错了,我得到的日期是:2015-10-01、2016-10-01,而 2014-09-30 之类的日期没有显示。

基本上我想显示如下日期:

如果今天是 2015-10-01,我想查看早于 1 年的日期,即从 2014-09-30 开始的日期,而不显示像 2015-10-01、2016-10-01 这样的日期。

也许我必须在数据库中编辑一些东西?

寻求您的帮助,谢谢!

最佳答案

您必须使用小于而不是大于或等于:

$sql = "SELECT * FROM My_Contracte WHERE expired_contract < DATE_SUB(NOW(),INTERVAL 1 YEAR) 

关于php - MYSQL SELECT 记录早于 1 年前,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32886852/

相关文章:

php - 如何使用数据库中的tinymce显示页面

mysql - 在运行事务时锁定行

Mysql:如何在演示数据库上向所有用户授予 SELECT

php - 如何在数据库而非数组中使用 in_array 的替代方法

javascript - 根据最旧到最新的日期将对象插入数组

java - XSLT xmlXPathCompOpEval : function new not found

php - 关闭 PHP 和 MySQL 上的警告和错误

php - PHP中使用相同键存储不同数组的值

PHP file_exists 仅适用于 root :root

java - 在 postgresql 中通过 hibernate 保存 java 日期时的 GWT 日期选择器格式问题