私はこれを以下のクエリに使用します:
$usertypes=Usertype::find()->where(['not in ','user_type_id',['2,3,4']])->all();
エラー:
Database Exception – yii\db\Exception
未定義のオフセット: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();
または:
$usertypes=Usertype::find()
->where(['NOT',['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
これを試して:
$usertypes = Usertype::find()
->andFilterWhere(['NOT IN','user_type_id',[2,3,4]])
->all();
"not
" Wordまたは "<>
"
$usertypes=Usertype::find()->where(['not',['user_type_id'=>['2,3,4']]])->all();
またはこれ
$usertypes=Usertype::find()->where(['<>',['user_type_id'=>['2,3,4']]])->all();