0
나는 다음과 같은 하나 이상의 critera을 가질 수 쿼리를 만들고 싶어 :Yii에서 다중 기준 쿼리를 만드는 방법은 무엇입니까?
select * from table where c1 IN(...) AND c2 IN (....) AND c3 IN (....);
내가 3 개 필드 (c1..c3)를 사용할 수 있습니다 또는 하나 개의 필드 만 사용할 수 있으며, 및 IN 절의 배열은 여기 내 코드입니다, 너무 고정되지 않습니다
$w = 'select * from jobs where ';
$c1 = new CDbCriteria();
if($dcr!=null){
$w = $w.'division IN(';
$dcrr = "'". implode("', '", $dcr) ."'";
$w = $w.$dcrr.");";
foreach($dcr as $txt){
$c1->compare('division',$txt,true,'OR');
}
}
if($lcr!=null){
$c2 = new CDbCriteria();
foreach($lcr as $txt){
$c2->compare('location',$txt,true,'OR');
}
}
if($scr!=null){
$c3 = new CDbCriteria();
foreach($lcr as $txt){
$c3->compare('Salary',$txt,true,'OR');
}
}
$connection=Yii::app()->db;
$connection->active=true;
$command=$connection->createCommand($w);
$model = $command->query();
$connection->active=false;
$w='';
//$model = Jobs::model()->findAll($c2);
}
}
$this->renderPartial('_index', array('model'=>$model));
이 yiiframework.com/doc/guide/1.1/en/quickstart.first-app을 확인하고 Yii 사용에 대해 자세히 알아보십시오. MVC 패턴과 거의 GII를 확인하십시오! 죄송하지만 코드가 Yii와 일치하지 않습니다. – lin
@lin 나는 Yii를 사용하는 방법을 알고,이 코드는 작동하지 않습니다, 나는 그것을 여러 번 편집하고 업데이트하기 전에 속성을 제거하지 않고 복사했습니다. 제 질문은 어떻게 CDBCONNECTION의 다중 기준으로 쿼리를 작성합니까, 고맙습니다. – Mohammad