从表中选择值来自具有多个选择的select2的值

时间:2015-11-26 09:20:30

标签: mysql yii2

我有多个select2,接近10.所以当用户使用搜索表单搜索时,我会传递参数进行搜索。现在我的问题是他可以选择全部或者他可以选择2只有1或2.所以我如何从表中搜索这个。

我无法搜索一个参数是否返回空它给我空sql结果。我在yii2中这样做但我在这里只需要yii2中不完全想要的逻辑。我会把自己变成yii2。

$employee=EmpDetails::find()->where([
'designation_id'=>$designation,
'process_id'=>$process,
'state'=>$state
 ])->asArray()->all();

此处departmentprocessstate是数组。如果一个值为空,则查询返回null结果,如果没有值为空,则它可以正常工作。

1 个答案:

答案 0 :(得分:0)

我正在为那些给我-1代表并且不理解这个问题的人发布我自己的答案。

$query=EmpDetails::find() 
->andFilterWhere(['city'=>$city])
->andFilterWhere(['state'=>$state])
->andFilterWhere(['department'=>$department])
->asArray()
->all();

此方法andFilterWhere将删除空查询操作数。 这里是$city,其他是数组