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 相关文章推荐
谈谈关于php的优点与缺点
Apr 11 PHP
FireFox浏览器使用Javascript上传大文件
Oct 30 PHP
单台服务器的PHP进程之间实现共享内存的方法
Jun 13 PHP
PHP实现获取某个月份周次信息的方法
Aug 11 PHP
php简单日历函数
Oct 28 PHP
WordPress中使主题支持小工具以及添加插件启用函数
Dec 22 PHP
PHP操作MySQL的mysql_fetch_* 函数的常见用法教程
Dec 25 PHP
thinkPHP导出csv文件及用表格输出excel的方法
Dec 30 PHP
PHP中危险的file_put_contents函数详解
Nov 04 PHP
ecshop添加菜单及权限分配问题
Nov 21 PHP
php 可变函数使用小结
Jun 12 PHP
laravel 查询数据库获取结果实现判断是否为空
Oct 24 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类的使用 实例代码讲解
2009/12/28 PHP
php学习之简单计算器实现代码
2011/06/09 PHP
php中通过虚代理实现延迟加载的实现代码
2011/06/10 PHP
php中将字符串转为HTML的实体引用的一个类
2013/02/03 PHP
php读取本地文件常用函数(fopen与file_get_contents)
2013/09/09 PHP
destoon实现调用当前栏目分类及子分类和三级分类的方法
2014/08/21 PHP
高质量PHP代码的50个实用技巧必备(上)
2016/01/22 PHP
深入解析PHP的Yii框架中的缓存功能
2016/03/29 PHP
简单三步,搞掂内存泄漏
2007/03/10 Javascript
JavaScript 高级语法介绍
2009/06/15 Javascript
jquery放大镜效果超漂亮噢
2013/11/15 Javascript
javascript创建createXmlHttpRequest对象示例代码
2014/02/10 Javascript
jquery mobile页面跳转后样式丢失js失效的解决方法
2014/09/06 Javascript
JS动态修改图片的URL(src)的方法
2015/04/01 Javascript
node.js监听文件变化的实现方法
2019/04/17 Javascript
js 函数性能比较方法
2020/08/24 Javascript
jquery实现异步文件上传ajaxfileupload.js
2020/10/23 jQuery
Flexible.js可伸缩布局实现方法详解
2020/11/13 Javascript
vue动态合并单元格并添加小计合计功能示例
2020/11/26 Vue.js
python简单判断序列是否为空的方法
2015/06/30 Python
python 实现将字典dict、列表list中的中文正常显示方法
2018/07/06 Python
python把ipynb文件转换成pdf文件过程详解
2019/07/09 Python
Python实现图片裁剪的两种方式(Pillow和OpenCV)
2019/10/30 Python
详解Django配置JWT认证方式
2020/05/09 Python
Django ORM实现按天获取数据去重求和例子
2020/05/18 Python
Banggood官网:面向全球客户的综合商城
2017/04/19 全球购物
美国在线打印网站:Overnight Prints
2018/10/11 全球购物
J2EE包括哪些技术
2016/11/25 面试题
基督教婚礼主持词
2014/03/14 职场文书
党员群众路线承诺书
2014/05/20 职场文书
2014年控辍保学工作总结
2014/12/08 职场文书
家长给老师的感谢信
2015/01/20 职场文书
辞职信格式模板
2015/02/27 职场文书
教你用Python爬取英雄联盟皮肤原画
2021/06/13 Python
解决Laravel使用验证时跳转到首页的问题
2021/11/17 PHP
大型强子对撞机再次重启探索“第五种自然力”
2022/04/29 数码科技