Yii模型操作之criteria查找数据库的方法


Posted in PHP onJuly 15, 2016

本文实例讲述了Yii模型操作之criteria查找数据库的方法。分享给大家供大家参考,具体如下:

数据模型搜索方法:

public function search()
{
  // Warning: Please modify the following code to remove attributes that
  // should not be searched.
  $criteria=new CDbCriteria;
  $criteria->compare('id',$this->id);
  $criteria->compare('title',$this->title,true); //支持模糊查找
  $criteria->compare('content',$this->content,true); //支持模糊查找
  $criteria->compare('type',$this->type);
  $criteria->compare('user',$this->user,true); //支持模糊查找
  $criteria->compare('status',$this->status);
  $criteria->compare('create_data',$this->create_data,true); //支持模糊查找
  return new CActiveDataProvider($this, array(
    'criteria'=>$criteria,
    'pagination'=>array(
      'pageSize'=>50,
    ),
  ));
}

定义比较运算:

$criteria->compare('create_time','<='.$this->endtime),
//创建早间小于等于指定时间

定义要查找的字段:

//查找的结果
$criteria->select = 'id,title,content,author,status,createtime',
//也可以以下一种方式定义
$criteria->select = array('id','title','content','author','status','createtime'),

定义填加查找条件:

//定义条件
$criteria->select = 'status=1',
//添加匹配
$criteria->compare('title',$this->title,true),
//添加条件 $condition可以是数组,也可以是字符串,and可以省略
$criteria->addCondition($condition,'and'),
//添加IN条件 $column为字段名
$criteria->addInCondition(string $column, array $values, string $operator='AND')
//添加notin条件
$criteria->addNotInCondition(string $column, array $values, string $operator='AND')
//添加like条件
$criteria->addSearchCondition(string $column, string $keyword),
//添加Between条件
$criteria->addBetweenCondition(string $column, string $valueStart, string $valueEnd, string $operator='AND'),

JOIN连表查询

$criteria->join = 'LEFT JOIN users ON users.id=authorID',

order查询结果排序:

$criteria->order = 'createtime DESC',

group结果分组:

$criteria->group = 'projectID, teamID',

having筛选分组结果分组数量:

$criteria->having = 'SUM(revenue)<50000',

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

PHP 相关文章推荐
配置支持SSI
Nov 25 PHP
php下的权限算法的实现
Apr 28 PHP
Smarty Foreach 使用说明
Mar 23 PHP
php实现多张图片上传加水印技巧
Apr 18 PHP
dedecms函数分享之获取某一栏目所有子栏目
May 19 PHP
php计算整个目录大小的方法
Jun 01 PHP
PHP使用数组实现矩阵数学运算的方法示例
May 29 PHP
理清PHP在Linxu下执行时的文件权限方法
Jun 07 PHP
Yii2框架实现登录、退出及自动登录功能的方法详解
Oct 24 PHP
Laravel 微信小程序后端搭建步骤详解
Nov 26 PHP
PHP数组Key强制类型转换实现原理解析
Sep 01 PHP
PHP反射基础知识回顾
Sep 10 PHP
功能强大的PHP POST提交数据类
Jul 15 #PHP
Yii的Srbac插件用法详解
Jul 14 #PHP
Yii中srbac权限扩展模块工作原理与用法分析
Jul 14 #PHP
Yii视图操作之自定义分页实现方法
Jul 14 #PHP
全面解析PHP操作Memcache基本函数
Jul 14 #PHP
Yii视图CGridView实现操作按钮定义地址示例
Jul 14 #PHP
Yii中的relations数据关联查询及统计功能用法详解
Jul 14 #PHP
You might like
php ftp文件上传函数(基础版)
2010/06/03 PHP
C#使用PHP服务端的Web Service通信实例
2014/04/08 PHP
ThinkPHP的L方法使用简介
2014/06/18 PHP
PHP的Yii框架使用中的一些错误解决方法与建议
2015/08/21 PHP
javascript静态的url如何传递
2007/05/03 Javascript
javascritp实现input输入框相关限制用法
2007/06/29 Javascript
JavaScript创建命名空间(namespace)的最简实现
2007/12/11 Javascript
一个js写的日历(代码部分网摘)
2009/09/20 Javascript
javascript Object与Function使用
2010/01/11 Javascript
js 无提示关闭浏览器页面的代码
2010/03/09 Javascript
jquery显示和隐藏div特效实例
2013/02/27 Javascript
jQuery鼠标经过方形图片切换成圆边效果代码分享
2015/08/20 Javascript
实例详解JavaScript获取链接参数的方法
2016/01/01 Javascript
JavaScript笔记之数据属性和存储器属性
2016/03/31 Javascript
jquery对dom节点的操作【推荐】
2016/04/15 Javascript
Bootstrap开关(switch)控件学习笔记分享
2016/05/30 Javascript
JavaScript基于原型链的继承
2016/06/22 Javascript
jQuery ztree实现动态树形多选菜单
2016/08/12 Javascript
VueJS 集成 Medium Editor的示例代码 (自定义编辑器按钮)
2017/08/24 Javascript
详解jQuery中的isPlainObject()使用方法
2018/02/27 jQuery
js数组去重的方法总结
2019/01/18 Javascript
详解JSON和JSONP劫持以及解决方法
2019/03/08 Javascript
js 实现ajax发送步骤过程详解
2019/07/25 Javascript
layui清除radio的选中状态实例
2019/11/14 Javascript
vue组件开发之tab切换组件使用详解
2020/08/21 Javascript
jQuery实现回到顶部效果
2020/10/19 jQuery
python实现哈希表
2014/02/07 Python
python同义词替换的实现(jieba分词)
2020/01/21 Python
艺术应用与设计专业个人的自我评价
2013/11/19 职场文书
酒店开业庆典主持词
2014/03/21 职场文书
节能环保标语
2014/06/12 职场文书
高中生第一学年自我鉴定
2014/09/12 职场文书
建筑工地文明标语
2014/10/09 职场文书
SQL SERVER中常用日期函数的具体使用
2021/04/08 SQL Server
JS监听Esc 键触发事键
2021/04/14 Javascript
Java无向树分析 实现最小高度树
2022/04/09 Javascript