1: 此方法返回 ['name' => 'daxia'] 的所有数据;

User::find()->where(['name' => 'daxia'])->all();

2: 此方法返回 ['name' => 'daxia']的一条数据

User::find()->where(['name' => 'daxia'])->one();

3: 在条件name的基础上,额外添加另一个条件sex

User::find()->where(['name' => 'daxia'])->andWhere(['sex' => '女'])->one();

或者:

User::find()->where(['name' => 'daxia', 'sex' => '女'])->one();

说明: 这两种方法都是可以的

4: andFilterWhere/andWhere应用: 在[1427925600-1427968800]之间查询

User::find()->andFilterWhere(['between', 'regtime', '1427925600', '1427968800’])

说到andFilterWhere,下面我把用到的各种的情况示例列出:

1) : sql:   id=1 AND id=2
条件: ['and', 'id=1', 'id=2'] 2) : sql: id=1 OR id=2
条件: ['or', 'id=1', 'id=2'] 3) : sql: id BETWEEN 1 AND 10
条件: ['between', 'id', 1, 10] 4) : sql: id IN (1, 2, 3)
条件: ['in', 'id', [1, 2, 3]] 5) : sql: name LIKE '%tester%' 模糊查询
条件: ['like', 'name', 'tester'] 6) : sql: age>10
条件: ['>', 'age', 10]

5: orderBy() 应用

sql: ORDER BY `id` ASC, `name` DESC

Yii对应的model书写如下:
$query->orderBy([
'id' => SORT_ASC, 升序 默认
'name' => SORT_DESC, 降序
]);

6: groupBy() 应用:

sql:  ... GROUP BY `id`, `status`

Yii对应的model书写如下:

$query->groupBy(['id', 'status']);

7: having()应用:

sql:  ... HAVING `status` = 1

Yii对应的model书写如下:

$query->having(['status' => 1]);

8: limit() offset() 应用:

sql:  ... LIMIT 10 OFFSET 20

Yii对应的model书写如下

$query->limit(10)->offset(20);

9: 用自己书写的sql语句,去查询符合的数据

User::findBySql('SELECT * FROM user')->one();  此方法是用 sql  语句查询 user 表里面的一条数据;

User::findBySql('SELECT * FROM user')->all();  此方法是用 sql  语句查询 user 表里面的所有数据;

说明: 测试 - 你也许想要测试或者使用一个由 yii\db\Query 对象创建的 SQL 语句。 你可以使用以下的代码来达到目的:

$query->createCommand()->getRawSql();

下面就是官网上面展示的,一些比较常见的查询方法:

yii\db\Query 提供了一整套的用于不同查询目的的方法。
● yii\db\Query::all(): 将返回一个由行组成的数组,每一行是一个由名称和值构成的关联数组(译者注:省略键的数组称为索引数组)。
● yii\db\Query::one(): 返回结果集的第一行。
● yii\db\Query::column(): 返回结果集的第一列。
● yii\db\Query::scalar(): 返回结果集的第一行第一列的标量值。
● yii\db\Query::exists(): 返回一个表示该查询是否包结果集的值。
● yii\db\Query::count(): 返回 COUNT 查询的结果。
● 其它集合查询方法: 包括 yii\db\Query::sum(), yii\db\Query::average(), yii\db\Query::max(), yii\db\Query::min() 等. $q 是一个必选参数, 既可以是一个字段名称,又可以是一个 DB 表达式。

Yii2.0 对的一些简单的操作的更多相关文章

  1. [moka同学笔记]yii2.0小物件的简单使用(第二种方法)

    1.在widgets/TestWidget.php中 <?php /** * Created by PhpStorm. * User: moka同学 * Date: 2016/08/05 * T ...

  2. [moka同学笔记]yii2.0小物件的简单使用(第一种方法)

    这是第一种方法,还有另一种方法,其实都差不多. 1.在创建widgets\HelloWiget.php <?php /** * Created by PhpStorm. * User: Admi ...

  3. yii2.0 在save保存之前的操作(放在模型model文件内)

    public function beforeSave($insert){ if(parent::beforeSave($insert)) { if($insert) { } else { } retu ...

  4. 下面介绍一下 Yii2.0 对数据库 查询的一些简单的操作

    下面介绍一下 Yii2.0 对数据库 查询的一些简单的操作 User::find()->all(); 此方法返回所有数据: User::findOne($id); 此方法返回 主键 id=1 的 ...

  5. Yii2.0高级框架数据库增删改查的一些操作(转)

    yii2.0框架是PHP开发的一个比较高效率的框架,集合了作者的大量心血,下面通过用户为例给大家详解yii2.0高级框架数据库增删改查的一些操作 --------------------------- ...

  6. Yii2.0高级框架数据库增删改查的一些操作

    yii2.0框架是PHP开发的一个比较高效率的框架,集合了作者的大量心血,下面通过用户为例给大家详解yii2.0高级框架数据库增删改查的一些操作 --------------------------- ...

  7. yii2.0操作数据库

    首先不得不说yii2.0面向对象的比较彻底,建议没学过或者没学好面向对象的同学再看看面向对象. 其次切入正题. 先创建数据库,这步自己写. DROP TABLE IF EXISTS `country` ...

  8. Yii2.0简单隐藏index.php文件和模块配置和layout布局配置禁用和日志写入配置

    隐藏index.php文件 目的:想去掉浏览器地址栏中的 index.php?r= 这一块. 在/config/web.php中   ’components'=>[]   中添加如下代码: 'u ...

  9. yii2的权限管理系统RBAC简单介绍

    这里有几个概念 权限: 指用户是否可以执行哪些操作,如:编辑.发布.查看回帖 角色 比如:VIP用户组, 高级会员组,中级会员组,初级会员组 VIP用户组:发帖.回帖.删帖.浏览权限 高级会员组:发帖 ...

随机推荐

  1. swift-元组

    元组: 将多个相同或者不同类型的值用一个小括号括起来就是一个元组.元组和结构体很像,实际上元组是复合类型.小括号内可以写任意类型,如果不定义类型,可以根据数据自动判断推算出类型 省略了类型 let p ...

  2. css选择器的使用详解

    -.css选择器的分类: 二.常用选择器详解: 1.标签选择器: 语法: 标签名 { 属性:属性值; } 代码示例: h1 { color: #ccc; font-size: 28px; } 2.类选 ...

  3. AngularJS API

    AngularJS 全局 API 用于执行常见任务的 JavaScript 函数集合 angular.lowercase() 转换字符串为小写 angular.uppercase() 转换字符串为大写 ...

  4. 3、项目资源的提供 - PMO项目管理办公室

    PMO项目管理办公室也需要对项目相关的资源进行提供,从而针对项目的资源也进行标准化和规范化的管理.也就是说,PMO项目管理办公室就是提供项目相关的规范化资源内容,从而统一管理项目相关的内容,达到规范的 ...

  5. Linux下,拷贝文件时,排除某些文件

     一下是自己用到到几次实践,觉得很赞:   1.拷贝文件时,排除某些不需要的文件:   1)使用xargs来做: ls /tmp/test/ |grep -v .gz |xargs -i cp -r ...

  6. 【mysql】关于binlog格式

    写在前面的话 1.推荐用mixed,默认使用statement,基于上下文  set session/global binlog_format=mixed; 2.二进制日记录了数据库执行更改的操作,如 ...

  7. Hive安装(二)之表不见了

    重启一下电脑,发现表不见了,原来我用的derby存储hive的meta,网上找了一下资料,说是要用mysql, 于是安装mysql   sudo apt-get install mysql-serve ...

  8. 当我们在谈论kmeans(2)

        本稿为初稿,后续可能还会修改:如果转载,请务必保留源地址,非常感谢! 博客园:http://www.cnblogs.com/data-miner/ 其他:建设中- 当我们在谈论kmeans(2 ...

  9. cg数据类型

    Cg 支持7 种基本的数据类型:1. float,32 位浮点数据,一个符号位.浮点数据类型被所有的profile 支持(但是DirectX8 pixel profiles 在一些操作中降低了浮点数的 ...

  10. svn cleanup 执行失败时,可以勾选 break locks,