Yii2模型搜索中如何设置条件为空?

How to set the condition is null in Yii2 model search?

我想设置显示 title_recievednull 的所有车辆的条件。

 ->andFilterWhere(['=', 'tr.title_recieved', null])
 ->andFilterWhere(['is', 'tr.title_recieved', null])
 ->andFilterWhere(['is', [ 'tr.title_recieved', null]])

我已经尝试了所有可用的选项,null 条件在 andWhere 中有效,但在 andFilterWhere 中无效。

像这样在查询中使用 andWhere。

->andWhere(['tr.title_recieved' => null]);

试试这个:

 ->andFilterWhere('tr.title_recieved is NULL');

**根据 yii2 文档 andFilterWhere() 向现有条件添加一个额外的 WHERE 条件,但忽略空操作数。

新条件和现有条件将使用 'AND' 运算符连接。

这个方法类似于andWhere()。主要区别在于此方法将删除空查询操作数。因此,这种方法最适合基于用户输入的过滤值构建查询条件。 来自文档 http://www.yiiframework.com/doc-2.0/yii-db-querytrait.html#andFilterWhere()-detail **

可以这样做

$query->andFilterWhere(['IS', 'tr.title_recieved', new \yii\db\Expression('NULL')]);