gpt4 book ai didi

MySQL查询——2组条件

转载 作者:太空宇宙 更新时间:2023-11-03 10:52:35 25 4
gpt4 key购买 nike

这个问题我想了很久,都弄糊涂了!我正尝试在 CakePHP 中为以下场景提出一个 MySQL 查询:

每条记录有2个日期;为了简单起见,我将它们称为 F 和 I。它们决定了数据的质量,如下所示:

  • 错误数据 - F 和 I 均为空
  • 良好的数据 - F 和 I 都是非空的并且代表过去 3 个月内的日期“介于两者之间”的数据 - 其他一切

前两个很简单:

红色:

$conditions['AND'] = array('F' => null, 'I' => null);

绿色:

$conditions['AND'] = array(
'F >=' => Three months ago,
'I >=' => Three months ago
)

但我对第三个选项有疑问。我已经尝试了一些东西,我知道它是这样的:

$conditions['NOT'] = array(
'AND' => array(
'F >=' => Three months ago,
'I >=' => Three months ago
),
'AND' => array(
'F' => null,
'I' => null
)
)

但显然这行不通,因为它有两个不同的“AND”值。

最佳答案

我认为您的 bool 逻辑有问题。如果您希望 F & I 表示过去三个月内的日期,那么您将排除 F >= 三个月或 I >= 三个月的任何条目。

在您的 bool 逻辑中使用德摩根定律会减少混淆 -- NOT (F >= three months OR I >= three months)F < three months AND I < three months相同.因此,对于第三条规则,您的条件数组将如下所示:

array('conditions' => array('AND' => array('F <' => three months, 'I <' => three months)));

关于MySQL查询——2组条件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23347764/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com