activerecord - mysql case sensitive table names
Yii2: Active Record add Not In condition (4)
Bueno, todos los operandos de consulta ahora se combinan dentro de yii/db/QueryInterface::Where()
por documentación. Ahora se puede agregar una condición In utilizando algo así como
$query = MyModel::find()->where([''attribute''=>$array]);
para un no en condición, es un formato ligeramente diferente
$query = MyModel::find()->where([''not in'',''attribute'',$array]);
¿Cuál es la forma activa de Grabar de agregar una condición IN a una Consulta activa en yii 1.x podría usar CDbCriteria de esta manera?
$cr = new CDbCriteria();
$cr->addNotInCondition(''attribute'', $array);
Parece que no hay una llamada API equivalente en la implementación del registro activo yii2, ¿cómo hacerlo a través de un registro activo?
Para mí, la única solución de trabajo fue:
$query = MyModel::find()->where(''`your-attribute` NOT IN('' . implode('','', $array) . '')'')->all();
Para números:
$query = MyModel::find()->where(''NOT IN(''.implode('','', $array).'')'');
Para cuerdas
$deleteContracts = Contract::find()
->where([
''session_id'' => $session_id,
''status'' => Contract::STATUS_COMPLETED
])
->andWhere([''not in'', ''contract_id'', $contracts])
->all();
$query = MyModel::findAll([''not in '',''attribute'',$array]);
http://www.yiiframework.com/doc-2.0/guide-db-active-record.html