MySql 查询字符串日期问题

标签 mysql date syntax query-string

我这里有这个查询字符串($month = 11):

select * from members where CURDATE() = DATE_ADD(renewal_date, INTERVAL $month MONTH);

此查询字符串的作用是获取我的所有成员(member),其更新日期为从当前日期起 11 个月前

我还有另外两个字段,reminder_date 和 blocker。我想要添加的是,如果阻止者不等于1(阻止者可以是0或1),则获取从当前日期起1个月前的reminder_date的成员

我该怎么做?

谢谢, J

最佳答案

你可以试试这个:

SELECT *
FROM members
WHERE CURDATE() = DATE_ADD(renewal_date, INTERVAL $MONTH MONTH)
  OR (
    CURDATE() = DATE_ADD(reminder_date, INTERVAL 1 MONTH)
    AND blocker = 0
    );

这将获取您的原始结果,并添加一月前的reminder_date和blocker = 0的结果

关于MySql 查询字符串日期问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20052042/

相关文章:

postgresql - PostgreSQL 10 中的默认日期范围更宽?

syntax - OCaml中的一元减号和 float

syntax - Notepad++:保存文件前的语法高亮

mysql - 从加入mysql获取矩阵表

php - 如何使用 PHP 从 MySql 数据库中删除用户

javascript - 在 JavaScript 中访问 Struts 模型的日期对象

SQL 如何选择两个日期之间的所有行?

php - 基本创建表MYSQL语法错误

mysql - 合并具有相同 id 的多个 mysql 行

php - 在cakephp中插入数据