return $this->model()->getDbConnection()->createCommand()
->select("t.type,t.title,t.class_id,t.thumb,t.hours,t.real_price,t.price,c.name,p.cert_id")
->leftjoin(ClassroomClass::model()->tableName() .' c'," t.class_id = c.id")
->leftjoin(ClassroomProductCert::model()->tableName() .' p'," t.id = p.product_id")
->from($this->tableName() .' t')
->where("t.id = $course_id")
->queryRow();

第二种:

    $criteria =newCDbCriteria; 

    $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);//between1 and 4 $criteria->compare('id',1); //这个方法比较特殊,他会根据你的参数自动处理成addCondition或者addInCondition,
//即如果第二个参数是数组就会调用addInCondition $criteria->addCondition("id = :id");
$criteria->params[':id']=1; $criteria->select = 'id,parentid,name';//代表了要查询的字段,默认select='*';
$criteria->join = 'xxx'; //连接表
$criteria->with = 'xxx';//调用relations
$criteria->limit =10; //取1条数据,如果小于0,则不作处理
$criteria->offset =1; //两条合并起来,则表示 limit 10 offset1,或者代表了。limit 1,10
$criteria->order = 'xxx DESC,XXX ASC' ;//排序条件
$criteria->group = 'group 条件';
$criteria->having = 'having 条件 ';
$criteria->distinct = FALSE;//是否唯一查询

yii 常用的多表查询的更多相关文章

  1. oracle 常用的系统表查询

    (转自:http://blog.csdn.net/marshalchen/article/details/6552103) select * from user_tab_cols where colu ...

  2. Oracle常用内置数据表查询

    Oracle 查询库中所有表名.字段名.字段名说明,查询表的数据条数.表名.中文表名. 查询所有表名:select t.table_name from user_tables t;查询所有字段名:se ...

  3. Python学习day44-数据库(单表及多表查询)

    figure:last-child { margin-bottom: 0.5rem; } #write ol, #write ul { position: relative; } img { max- ...

  4. django之orm单表查询

    这几天重新学习了一下django的orm,以此作为记录来分享. Part1:修改配置,生成表 在写数据和查数据之前,首先先得把django配置一下,具体配置如下: 1.先在公共项目的settings中 ...

  5. Mysql常用表操作 | 单表查询

    160905 常用表操作 1. mysql -u root -p 回车 输入密码   2. 显示数据库列表 show databases     3. 进入某数据库 use database data ...

  6. yii学习笔记(7),数据库操作,联表查询

    在实际开发中,联表查询是很常见的,yii提供联表查询的方式 关系型数据表:一对一关系,一对多关系 实例: 文章表和文章分类表 一个文章对应一个分类 一个分类可以对应多个文章 文章表:article 文 ...

  7. Yii框架 多表查询实例

    Yii框架多表查询实例:总共分为两个步骤(以下的代码我全部都写在model中):1.先在主表model中声明关联表中所需要查询的字段. public $surveyls_description; // ...

  8. 数据库常用SQL语句(一):常用的数据库、表操作及单表查询语句

    以MySql数据库为例进行说明 1.数据库操作语句 2.表的操作语句 3.表中的字段操作语句 4.MYSQL支持的完整性约束 数据库管理系统提供了一致机制来检查数据库表中的数据是否满足规定的条件,以保 ...

  9. Django框架之第六篇(模型层)--单表查询和必知必会13条、单表查询之双下划线、Django ORM常用字段和参数、关系字段

    单表查询 补充一个知识点:在models.py建表是 create_time = models.DateField() 关键字参数: 1.auto_now:每次操作数据,都会自动刷新当前操作的时间 2 ...

随机推荐

  1. CSS基本知识3-CSS盒模型

    box-sizing: content-box|border-box|inherit; 值 描述 content-box 这是由 CSS2.1 规定的宽度高度行为. 宽度和高度分别应用到元素的内容框. ...

  2. Learning to rank 介绍

    PS:文章主要转载自CSDN大神hguisu的文章"机器学习排序":          http://blog.csdn.net/hguisu/article/details/79 ...

  3. 83 parrted-分区和分区大小的调整

    parted命令是由GNU组织开发的一款功能强大的磁盘分区和分区大小调整工具,与fdisk不同,它支持调整分区的大小.作为一种设计用于Linux的工具,它没有构建成处理与fdisk关联的多种分区类型, ...

  4. maven环境配置+eclipse环境配置

    一 . (1),下载maven 有点类似于tomcat 解压后就可以用 ,不用安装 (2), 配置环境变量 在系统变量的path 中添加  E:\01Server\maven\bin    注意是bi ...

  5. Asp.Net MVC<五>:过滤器

    ControllerActionInvoker在执行过程中除了利用ActionDescriptor完成对目标Action方法本身的执行外,还会执行相关过滤器(Filter).过滤器采用AOP的设计,它 ...

  6. Model-View-ViewModel for iOS [译]

    如果你已经开发一段时间的iOS应用,你一定听说过Model-View-Controller, 即MVC.MVC是构建iOS app的标准模式.然而,最近我已经越来越厌倦MVC的一些缺点.在本文,我将重 ...

  7. Ubuntu 14.04.4官方默认更新源sources.list

    Ubuntu 14.04.4官方默认更新源sources.list # deb cdrom:[Ubuntu LTS _Trusty Tahr_ - Release amd64 (20160217.1) ...

  8. bzoj 1305 dance跳舞

    最大流. 首先二分答案,问题转化为x首舞曲是否可行. 考虑建图,对每个人建立三个点,分别表示全体,喜欢和不喜欢. 源点向每个男生全体点连一条容量为x的边. 每个男生整体点向喜欢点连一条容量为正无穷的边 ...

  9. 使用U盘重装电脑操作系统

    1. 打开360软件管家,找一个软件"蚂蚁U盘启动"下载,下载好以后打开,电脑上插入U盘,我们制作一个启动U盘备用! 图片图片 按提示制作好启动盘后,保管好U盘. 找一个系统下载网 ...

  10. 创建一个自定义颜色IRgbColor

    后续文章需要用到,很简单的一个小函数 /// <summary> /// 自定义颜色 /// </summary> /// <param name="r&quo ...