mysql - where 子句中的多个 AND OR 逻辑

标签 mysql sql database

考虑以下场景

我想从表 A 中选择所有列

  1. 订阅日期在 2016-01-01now()clubid=2 之间
  2. timesbilled>0clubid=2

我正在尝试以下(样本足够大,可以有样本)

Select *

From Table A

Where 
SubscribeDate between '2016-01-01' and now()
and clubid=2
OR
timesbilled>0

查询是否满足我的要求?

最佳答案

我会将您的查询表述为:

SELECT *
FROM TableA
WHERE (SubscribeDate BETWEEN '2016-01-01' AND NOW() OR timesbilled > 0) AND
      clubid = 2

您列出的两个条件都需要 clubid2。另一个要求是日期条件或计费条件为真。

关于mysql - where 子句中的多个 AND OR 逻辑,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44156958/

相关文章:

sql - 什么时候在 SQL Server 2005 中限制联接是有利的?

sql - 检索两个用户之间的最后一条消息

mysql - 仅当其他表中不存在时才将记录插入表中 - MySQL

java - 强制关闭Java应用程序是否会导致数据库连接泄漏

mysql - 如何选择字段不为空/空的行

php - 按html按钮后如何从mysql数据库中减去?

javascript - 为什么我尝试在 AngularJs 中获取非对象错误的属性?

mysql - 更新集不相应地工作

mysql - sql 连接表,其中 1 列有逗号

MySQL 查询返回重复结果