您好,我想在我的yii2查询中使用not null条件,我应该如何使用它。我不希望城市和州为空。
我的问题是
$query = new Query;
$query->select('ID, City,State,StudentName')
->from('student')
->where(['IsActive' => 1])
->orderBy(['rand()' => SORT_DESC])
->limit(10);
$dataProvider = new ActiveDataProvider([
'query' => $query,
'pagination' => false,
]);
发布于 2015-04-22 19:55:26
您可以结合使用SQL运算符和不应为空的字段来生成IS NOT NULL
not
语句。如下所示:
$query = new Query;
$query->select('ID, City,State,StudentName')
->from('student')
->where(['IsActive' => 1])
->andWhere(['not', ['City' => null]])
->andWhere(['not', ['State' => null]])
->orderBy(['rand()' => SORT_DESC])
->limit(10);
还要检查documentation中的示例。
发布于 2017-07-22 04:52:04
->where(['IS NOT', 'column', null]);
到达
WHERE column IS NOT NULL
你也可以使用,它打字速度更快
->where('column IS NOT NULL')
在复杂查询中
->where(['AND',
'column1 IS NOT NULL', // works
['IS NOT', 'column2', null], // works
['column3' => $value],
)
发布于 2015-04-22 19:52:04
其中一个选项是:
$query = new Query;
$query->select('ID, City,State,StudentName')
->from('student')
->where(['IsActive' => 1])
->andWhere(['<>', 'City', null])
->andWhere(['<>', 'State', null])
->orderBy(['rand()' => SORT_DESC])
->limit(10);
查看官方文档中的where。
https://stackoverflow.com/questions/29796329
复制相似问题