Mysql Yii查询生成器中的问题

Mysql Yii查询生成器中的问题,mysql,yii,query-builder,Mysql,Yii,Query Builder,我使用Yii框架,我需要构建具有许多条件的困难查询。 我正在填充2个数组$conditions和$value。 我有一个问题。 下面是一个例子 当我使用 $usersId = '1,2'; $conditions[] = 'e.user_id IN(:usersId)'; $values[':usersId'] = $usersId; 我只从用户_id=1获取值 当我不使用选项并手动写入时 $usersId = '1,2'; $conditions[] = 'e.user_id IN(' .

我使用Yii框架,我需要构建具有许多条件的困难查询。 我正在填充2个数组$conditions和$value。 我有一个问题。 下面是一个例子 当我使用

$usersId = '1,2';
$conditions[] = 'e.user_id IN(:usersId)';
$values[':usersId'] = $usersId;
我只从用户_id=1获取值

当我不使用选项并手动写入时

$usersId = '1,2';
$conditions[] = 'e.user_id IN(' . $usersId . ')'; 
没问题


当然,我可以使用第二个构造,但它似乎不是很好

如果我正确理解您的wuestion,您可以在yii中使用BindParam函数吗

而不是-$values[':usersId']=$usersId

编写这个-$command->BindParam(':usersId',$usersId,PDO::PARAM_STR)

非常简单,就是将参数绑定到命令语句


希望它能起作用

$values[':usersId']=$usersId

如果我正确理解您的wuestion,您可以在yii中使用BindParam函数吗

而不是-$values[':usersId']=$usersId

编写这个-$command->BindParam(':usersId',$usersId,PDO::PARAM_STR)

非常简单,就是将参数绑定到命令语句


希望它能起作用

您应该
附加条件

$criteria->addInCondition('e.user_id',array(1,2));

您应该
附加条件

$criteria->addInCondition('e.user_id',array(1,2));
一种方法是使用
附加条件
函数

$usersId = array(1,2); //must be array
$criteria=new CDbCriteria();
$criteria->addInCondition('user_id',$usersId);

$result = MyModel::model()->findAll($criteria);
一种方法是使用
附加条件
函数

$usersId = array(1,2); //must be array
$criteria=new CDbCriteria();
$criteria->addInCondition('user_id',$usersId);

$result = MyModel::model()->findAll($criteria);