Yii CDbCriteria的常用方法

$criteria = new CDbCriteria;      

$criteria->addCondition("id=1"); //查询条件,即where id = 1  

$criteria->addInCondition(id, array(1,2,3,4,5)); //代表where id IN (1,23,,4,5,);  

$criteria->addNotInCondition(id, array(1,2,3,4,5));//与上面正好相法,是NOT IN  

$criteria->addCondition(id=1,OR);//这是OR条件,多个条件的时候,该条件是OR而非AND  

$criteria->addSearchCondition(name, 分类);//搜索条件,其实代表了。。where name like ‘%分类%‘  

$criteria->addBetweenCondition(id, 1, 4);//between 1 and 4   

  

$criteria->compare(id, 1);    //这个方法比较特殊,他会根据你的参数自动处理成addCondition或者addInCondition,  

                                //即如果第二个参数是数组就会调用addInCondition  

/** 

 * 传递变量 

 */  

$criteria->addCondition("id = :id");  

$criteria->params[:id]=1;  

/** 

 * 一些public vars 

 */  

$criteria->select = id,parentid,name; //代表了要查询的字段,默认select=‘*‘;  

$criteria->join = xxx; //连接表  

$criteria->with = xxx; //调用relations   

$criteria->limit = 10;    //取1条数据,如果小于0,则不作处理  

$criteria->offset = 1;   //两条合并起来,则表示 limit 10 offset 1,或者代表了。limit 1,10  

$criteria->order = xxx DESC,XXX ASC ;//排序条件  

$criteria->group = group 条件;  

$criteria->having = having 条件 ;  

$criteria->distinct = FALSE; //是否唯一查询


多表查询

 $criteria=new CDbCriteria;

$criteria->alias = Invoice;
$criteria->join=LEFT JOIN Client ON Client.id=Invoice.clientId;
$criteria->condition=Client.businessId=. Yii::app()->userInfo->business;

 

Yii CDbCriteria的常用方法

原文地址:http://www.cnblogs.com/webcr/p/4283063.html

为您推荐

发表评论

电子邮件地址不会被公开。 必填项已用*标注