Yii2 NOT IN条件不起作用

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Yii2 NOT IN条件不起作用相关的知识,希望对你有一定的参考价值。

我用它来查询不在:

 $usertypes=Usertype::find()->where(['not in ','user_type_id',['2,3,4']])->all();

错误:

Database Exception – yiidbException

未定义的偏移量:1无法准备SQL:SELECT * FROM usertype WHERE user_type_id NOT IN:qp0

还尝试了数组格式为['2','3','4']但不起作用?问题是什么?

答案

试试这个 :

$usertypes=Usertype::find()
           ->where(['not in','user_type_id',[2,3,4]])
           ->all();

参考:http://www.bsourcecode.com/yiiframework2/select-query-model/#In-Condition

另一答案

也许删除'not in '的空间角色? $usertypes=Usertype::find()->where(['not in', 'user_type_id', ['2,3,4']])->all();

另一答案

尝试使用 - > andFilterWhere而不是where - > where

试试这个:

$usertypes=Usertype::find() ->andFilterWhere(['NOT IN','user_type_id',[2,3,4]]) ->all();

另一答案

你可以用“不”字或“<>”

 $usertypes=Usertype::find()->where(['not',['user_type_id'=>['2,3,4']]])->all();

或这个

 $usertypes=Usertype::find()->where(['<>',['user_type_id'=>['2,3,4']]])->all();

以上是关于Yii2 NOT IN条件不起作用的主要内容,如果未能解决你的问题,请参考以下文章

Yii2 教程 - yii2-redis 扩展详解

Yii2.0 安装yii2-queue并在Linux启动守护进程监听消息

Yii2 restful接口方式开发,权限控制(yii2-rest-rbac)

Yii2 yii2-imagine的使用

windows下yii2安装 AdminLTE和 yii2-admin

Yii2的相关学习记录,安装Yii2