Yii的CDbCriteria查询条件用法实例_php实例

本文实例总结了一些Yii的CDbCriteria查询条件用法,分享给大家供大家参考。具体分析如下:

这里就是Yii中使用CDbCriteria方法来进行查询的各种条件:

复制代码 代码如下:

$criteria = new CDbCriteria;
$criteria->addCondition("MACID=464"); //查询条件,即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('link', '裸体');//搜索条件where name like '%分类%'
$criteria->addBetweenCondition('id', 10000, 10005);//between 10000 and 10005

$criteria->compare('id', 1);  //这个方法比较特殊,他会根据你的参数
//自动处理成addCondition或者addInCondition,
//即如果第二个参数是数组就会调用addInCondition 
/**
* 传递变量
*/ 
$criteria->addCondition("id = :id"); 
$criteria->params[':id']=10; 
/**
* 一些public vars
*/ 
$criteria->select = 'id,MACID,type'; //代表了要查询的字段,默认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 = 'id DESC,MACID ASC' ;//排序条件
$criteria->group = 'group type';
$criteria->having = 'having 条件 ';
$criteria->distinct = FALSE; //是否唯一查询 
return new CActiveDataProvider('visitlog', array(
  'criteria'=>$criteria,
));

希望本文所述对大家基于Yii框架的PHP程序设计有所帮助。

时间: 2024-10-21 09:32:57

Yii的CDbCriteria查询条件用法实例_php实例的相关文章

Yii框架关联查询with用法分析_php实例

本文实例分析了Yii框架关联查询with用法.分享给大家供大家参考.具体方法如下: Yii框架关联查询与mysql中的关联查询会有什么区别呢?这里小编就与各位来一起来看看吧. Yii的关联查询确实是一个方便的东西,网上的资料也很多,但是大部分都是Ctrl+c,Ctrl+v,有些东西一直没有人出来详细的写篇文章说明一下,在参考了网上很多资源以后,加上自己的的一些理解,写下了这篇文章,给广大初学者朋友们提供一点个人见解. YII 支持四种类型的关系: BELONGS_TO(属于): 如果表 A 和

ThinkPHP3.1新特性之查询条件预处理简介_php实例

以往的ThinkPHP3.0版本对数组方式的查询条件会进行安全过滤(这是由于3.0强制使用了字段类型检测,所以数组方式的查询条件会强制转换为字段的设定类型),但是3.0版本并不支持字符串条件的安全过滤.而ThinkPHP3.1版本则增加了对条件字符串进行预处理的支持,让ORM的安全性更加得以保证. 一.使用where方法 Model类的where方法支持字符串条件预处理,使用方式: $Model->where("id=%d and username='%s' and xx='%f'&quo

Yii的CDbCriteria查询条件例子

这篇就是Yii中使用CDbCriteria方法来进行查询的各种条件:        $criteria = new CDbCriteria;        $criteria->addCondition("MACID=464"); //查询条件,即where id = 1         $criteria->addInCondition('id', array(1,2,3,4,5)); //代表where id IN (1,23,,4,5,);         $crit

Yii控制器中filter过滤器用法分析_php实例

本文实例讲述了Yii控制器中filter过滤器用法.分享给大家供大家参考,具体如下: 指定过滤动作,(如下projectContext()方法在新建,列表,管理页面调用时使用) public function filters() { return array( 'accessControl', // perform access control for CRUD operations 'postOnly + delete', // we only allow deletion via POST

YII Framework的filter过滤器用法分析_php实例

本文实例讲述了YII Framework的filter过滤器用法.分享给大家供大家参考,具体如下: 首先看官方给出的说明文档,什么是过滤器,过滤器的作用,过滤器的规则,过滤器的定义方法等等. 然后对过滤器进行一个总结. http://www.yiiframework.com/doc/guide/1.1/zh_cn/basics.controller 过滤器是一段代码,可被配置在控制器动作执行之前或之后执行.例如, 访问控制过滤器将被执行以确保在执行请求的动作之前用户已通过身份验证:性能过滤器可用

Yii2中关联查询简单用法示例_php实例

本文实例讲述了Yii2中关联查询用法.分享给大家供大家参考,具体如下: 有两张表,post和category,post.cate_id对应category.id 使用Gii上升这两张表的model 然后post的model中有如下代码 public function getCate() { return $this->hasOne(Category::className(), ['id' => 'cate_id']); } 在post这个model最下面在添加如下方法即可获取关联表内容 pub

excel中函数lookup查询函数用法详细步骤实例

  excel中lookup查找函数用法详细步骤实例,函数的工作原理是在第二个参数(区域,一般是一列)中查找第一个参数(一般为单元格值),找到首个大于第一个参数时,函数返回找到的上方位置,对应的第三个参数的值. 如果第二个参数升序排列,可以直接说是返回小于等于第一个参数的最大值. 一般情况下都需要将第二个参数升序排列,函数才有现实意义. 方法/步骤 如图红框内部是不同的身高区间对应的尺码型号. 在红框所示的单元格内输入=lookup(),当光标在括号外部闪烁时,鼠标点一下括号内部,此时光标会在括

Yii多表联合查询操作详解_php实例

本文针对Yii多表联查进行汇总描述,供大家参考,具体内容如下 1.多表联查实现方法 有两种方式一种使用DAO写SQL语句实现,这种实现理解起来相对轻松,只要保证SQL语句不写错就行了.缺点也很明显,比较零散,而且不符合YII的推荐框架,最重要的缺点在于容易写错. 还有一种便是下面要说的使用YII自带的CActiveRecord实现多表联查 2. 整体框架 我们需要找到一个用户的好友关系,用户的信息放在用户表中,用户之间的关系放在关系表中,而关系的内容则放在关系类型表中.明显的我们只需要以关系表为

ThinkPHP查询语句与关联查询用法实例_php实例

本文实例讲述了ThinkPHP查询语句与关联查询用法.分享给大家供大家参考.具体如下: 在thinkphp框架页面中我们可以直接拼写sql查询语句来实现数据库查询读写操作,下面就对此加以实例说明. 普通查询除了字符串查询条件外,数组和对象方式的查询条件是非常常用的,这些是基本查询所必须掌握的. 一.使用数组作为查询条件 复制代码 代码如下: $User = M("User"); //实例化User对象 $condition['name'] = 'thinkphp'; // 把查询条件传