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+mysql分页代码详解
Mar 27 PHP
php strstr查找字符串中是否包含某些字符的查找函数
Jun 03 PHP
浅析php插件 HTMLPurifier HTML解析器
Jul 01 PHP
PHP CURL 内存泄露问题解决方法
Feb 12 PHP
php给每个段落添加空格的方法
Mar 20 PHP
隐藏Nginx或Apache以及PHP的版本号的方法
Jan 03 PHP
PHP分页初探 一个最简单的PHP分页代码的简单实现
Jun 21 PHP
PHP单例模式详解及实例代码
Dec 21 PHP
PHP编程实现csv文件导入mysql数据库的方法
Apr 29 PHP
PHP基于堆栈实现的高级计算器功能示例
Sep 15 PHP
PHP删除数组中指定下标的元素方法
Feb 03 PHP
laravel5.6中的外键约束示例
Oct 23 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
一个基于phpQuery的php通用采集类分享
2014/04/09 PHP
PHP代码判断设备是手机还是平板电脑(两种方法)
2015/10/19 PHP
checkbox 复选框不能为空
2009/07/11 Javascript
nodejs 后缀名判断限制代码
2011/03/31 NodeJs
jquery中EasyUI实现同步树
2015/03/01 Javascript
javascript实现倒计时并弹窗提示特效
2015/06/05 Javascript
Labelauty?jQuery单选框/复选框美化插件分享
2015/09/26 Javascript
JS实现漂亮的窗口拖拽效果(可改变大小、最大化、最小化、关闭)
2015/10/10 Javascript
快速解决js动态改变dom元素属性后页面及时渲染的问题
2016/07/06 Javascript
bootstrap插件treeview实现全选父节点下所有子节点和反选功能
2017/07/21 Javascript
基于jQuery对象和DOM对象和字符串之间的转化实例
2017/08/08 jQuery
bootstrap里bootstrap动态加载下拉框的实例讲解
2018/08/10 Javascript
又拍云 Node.js 实现文件上传、删除功能
2018/10/28 Javascript
[01:36:57]【09DOTA2第一视角】小骷髅
2014/04/16 DOTA
详解Python 实现元胞自动机中的生命游戏(Game of life)
2018/01/27 Python
Python抓取聚划算商品分析页面获取商品信息并以XML格式保存到本地
2018/02/23 Python
Python 画出来六维图
2019/07/26 Python
Python类中方法getitem和getattr详解
2019/08/30 Python
详解Pandas 处理缺失值指令大全
2020/07/30 Python
Python 可视化神器Plotly详解
2020/12/26 Python
python安装mysql的依赖包mysql-python操作
2021/01/01 Python
socket.io 和canvas 实现的共享画板功能
2019/05/22 HTML / CSS
Html5原创俄罗斯方块(基于canvas)
2019/01/07 HTML / CSS
欧洲最大的滑雪假期供应商之一:Sunweb Holidays
2018/01/06 全球购物
adidas瑞典官方网站:购买阿迪达斯鞋子和运动服
2019/12/11 全球购物
P/Invoke是什么
2015/07/31 面试题
校运动会广播稿(100篇)
2014/09/12 职场文书
党员“四风”问题批评与自我批评思想汇报
2014/10/06 职场文书
个人买房协议书范本
2014/10/06 职场文书
工作批评与自我批评范文
2014/10/16 职场文书
2014年店长工作总结
2014/11/17 职场文书
海洋天堂观后感
2015/06/05 职场文书
今日说法观后感
2015/06/08 职场文书
《学会看病》教学反思
2016/02/17 职场文书
导游词之凤凰古城
2019/10/22 职场文书
redis 存储对象的方法对比分析
2021/08/02 Redis