Yii2框架实现数据库常用操作总结


Posted in PHP onFebruary 08, 2017

通用:

use yii\db\Query;
$query = new Query();

查询:

Query:

$rows = (new \yii\db\Query())
      ->select(['code', 'name', 'population'])
      ->from('country')
      ->limit(10)
      ->all();

Select:

$data = $query->select(['code', 'name'])->from('country')->all();

// 调用 yii\db\Query::addSelect() 方法来选取附加字段
    $data = $query->select(['code', 'name'])
      ->addSelect(['population'])->all();

From:

$query->from('country'); 
$query->from(['public.country c']); 
$query->from('public.country c');

Where:

字符串格式,例如:'status=1'

哈希格式,例如: ['status' => 1, 'type' => 2]

操作符格式,例如:['like', 'name', 'test']

andFilterWhere()

orFilterWhere()

Active Record  (活动记录,以下简称AR)提供了一个面向对象的接口, 用以访问数据库中的数据。一个 AR 类关联一张数据表, 每个 AR 对象对应表中的一行,对象的属性(即 AR 的特性Attribute)映射到数据行的对应列。 一条活动记录(AR对象)对应数据表的一行,AR对象的属性则映射该行的相应列。

这里的增删改都会用到AR对象进行映射操作。

 增加

$country->name = 'UK';
$country->save();

修改

$country = Customer::findOne($id);
$country->email = 'UK';
$country->save(); // 等同于 $country->update();

删除

$country = Country::findOne($id);
$country->delete();

其他

User::find()->all();  //返回所有用户数据;
User::findOne($id);  //返回 主键 id=1 的一条数据; 
User::find()->where(['name' => 'ttt'])->one();  //返回 ['name' => 'ttt'] 的一条数据;
User::find()->where(['name' => 'ttt'])->all();  //返回 ['name' => 'ttt'] 的所有数据;
User::findBySql('SELECT * FROM user')->all(); //用 sql 语句查询 user 表里面的所有数据;
User::findBySql('SELECT * FROM user')->one(); //此方法是用 sql 语句查询 user 表里面的一条数据;
User::find()->andWhere(['sex' => '女', 'age' => '18'])->count('id');  //统计符合条件的总条数;
User::find()->one();  //返回一条数据;
User::find()->all();  //返回所有数据;
User::find()->count();  //返回记录的数量;
User::find()->average();  //返回指定列的平均值;
User::find()->min();  //返回指定列的最小值 ;
User::find()->max();  //返回指定列的最大值 ;
User::find()->scalar();  //返回值的第一行第一列的查询结果;
User::find()->column();  //返回查询结果中的第一列的值;
User::find()->exists();  //返回一个值指示是否包含查询结果的数据行;

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

PHP 相关文章推荐
使用php+xslt在windows平台上
Oct 09 PHP
PHP读取文件并可支持远程文件的代码分享
Oct 03 PHP
php实现用于验证所有类型的信用卡类
Mar 24 PHP
php实现图片等比例缩放代码
Jul 23 PHP
PHP扩展框架之Yaf框架的安装与使用
May 18 PHP
php操纵mysqli数据库的实现方法
Sep 18 PHP
php使用curl代理实现抓取数据的方法
Feb 03 PHP
php读取本地json文件的实例
Mar 07 PHP
thinkPHP5框架闭包函数与子查询传参用法示例
Aug 02 PHP
php上传后台无法收到数据解决方法
Oct 28 PHP
phpstudy2020搭建站点的实现示例
Oct 30 PHP
详解thinkphp的Auth类认证
May 28 PHP
Yii2实现中国省市区三级联动实例
Feb 08 #PHP
PHP+Ajax无刷新带进度条图片上传示例
Feb 08 #PHP
PHP中的使用curl发送请求(GET请求和POST请求)
Feb 08 #PHP
php制作基于xml的RSS订阅源功能示例
Feb 08 #PHP
PHP图片裁剪与缩放示例(无损裁剪图片)
Feb 08 #PHP
php实现XML和数组的相互转化功能示例
Feb 08 #PHP
PHP 获取指定地区的天气实例代码
Feb 08 #PHP
You might like
PHP 写文本日志实现代码
2010/05/18 PHP
php 如何设置一个严格控制过期时间的session
2017/05/05 PHP
地震发生中逃生十大法则
2008/05/12 Javascript
JavaScript之Getters和Setters 平台支持等详细介绍
2012/12/07 Javascript
如何从jQuery的ajax请求中删除X-Requested-With
2013/12/11 Javascript
浅析JavaScript中的事件机制
2015/06/04 Javascript
jquery实现简单手风琴菜单效果实例
2015/06/13 Javascript
利用jQuery和CSS将背景图片拉伸
2015/10/16 Javascript
使用基于Node.js的构建工具Grunt来发布ASP.NET MVC项目
2016/02/15 Javascript
Node.js操作Firebird数据库教程
2016/03/04 Javascript
AngularJS基础 ng-dblclick 指令用法
2016/08/01 Javascript
Vue.js中数组变动的检测详解
2016/10/12 Javascript
jQuery删除当前节点元素
2016/12/07 Javascript
Angular.js实现多个checkbox只能选择一个的方法示例
2017/02/24 Javascript
微信小程序的分类页面制作
2017/06/27 Javascript
js中的闭包实例展示
2018/11/01 Javascript
微信小程序实现获取用户信息并存入数据库操作示例
2019/05/07 Javascript
layui实现给某一列加点击事件
2019/10/26 Javascript
原生javascript制作的拼图游戏实现方法详解
2020/02/23 Javascript
python多进程操作实例
2014/11/21 Python
分析并输出Python代码依赖的库的实现代码
2015/08/09 Python
python安装PIL模块时Unable to find vcvarsall.bat错误的解决方法
2016/09/19 Python
Python实现调度算法代码详解
2017/12/01 Python
python判断输入日期为第几天的实例
2018/11/13 Python
浅谈python中get pass用法
2019/03/19 Python
Python中如何引入第三方模块
2020/05/27 Python
python 通过exifread读取照片信息
2020/12/24 Python
HTML5本地存储之Web Storage详解
2016/07/04 HTML / CSS
南京软件公司的.net程序员笔试题
2014/08/31 面试题
鼓励运动员的广播稿
2014/02/08 职场文书
经典婚礼主持开场白
2014/03/13 职场文书
交警个人先进事迹材料
2014/05/11 职场文书
普通话演讲稿
2014/09/03 职场文书
机关副主任个人四风问题整改措施
2014/09/26 职场文书
班子查摆四风个人对照检查材料思想汇报
2014/10/04 职场文书
2019最新婚庆对联集锦!
2019/07/10 职场文书