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 相关文章推荐
网站当前的在线人数
Oct 09 PHP
使用php显示搜索引擎来的关键词
Feb 13 PHP
php把session写入数据库示例
Feb 26 PHP
PHP中SESSION的注销与清除
Apr 16 PHP
PHP查询并删除数据库多列重复数据的方法(利用数组函数实现)
Feb 23 PHP
php反射类ReflectionClass用法分析
May 12 PHP
php+mysql实现简单登录注册修改密码网页
Nov 30 PHP
ThinkPHP实现简单登陆功能
Apr 28 PHP
php批量修改表结构实例
May 24 PHP
PHP基于ORM方式操作MySQL数据库实例
Jun 21 PHP
搭建自己的PHP MVC框架详解
Aug 16 PHP
php利用云片网实现短信验证码功能的示例代码
Nov 18 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常用表单验证类用法实例
2015/06/18 PHP
JQuery 选择器 xpath 语法应用
2010/05/13 Javascript
JavaScript中setInterval的用法总结
2013/11/20 Javascript
jquery实现鼠标滑过小图查看大图的方法
2015/07/20 Javascript
js正则表达式中exec用法实例
2015/07/23 Javascript
基于jQuery实现收缩展开功能
2016/03/18 Javascript
jQuery Dialog 取消右上角删除按钮事件
2016/09/07 Javascript
js 中文汉字转Unicode、Unicode转中文汉字、ASCII转换Unicode、Unicode转换ASCII、中文转换
2016/12/06 Javascript
JS获取数组中出现次数最多及第二多元素的方法
2017/10/27 Javascript
Angular实现的内置过滤器orderBy排序与模糊查询功能示例
2017/12/29 Javascript
vue2.0 实现页面导航提示引导的方法
2018/03/13 Javascript
使用Vue.js开发微信小程序开源框架mpvue解析
2018/03/20 Javascript
js 图片转base64的方式(两种)
2018/04/24 Javascript
js常见遍历操作小结
2019/06/06 Javascript
解决一个微信号同时支持多个环境网页授权问题
2019/08/07 Javascript
Vue 自定义指令实现一键 Copy功能
2019/09/16 Javascript
JavaScript find()方法及返回数据实例
2020/04/30 Javascript
JavaScript oncopy事件用法实例解析
2020/05/13 Javascript
[57:53]DOTA2上海特级锦标赛主赛事日 - 2 败者组第二轮#3OG VS VP
2016/03/03 DOTA
Python fileinput模块使用实例
2015/06/03 Python
Python基础教程之tcp socket编程详解及简单实例
2017/02/23 Python
python web.py开发httpserver解决跨域问题实例解析
2018/02/12 Python
python利用插值法对折线进行平滑曲线处理
2018/12/25 Python
在numpy矩阵中令小于0的元素改为0的实例
2019/01/26 Python
Python 中如何实现参数化测试的方法示例
2019/12/10 Python
Python实现石头剪刀布游戏
2021/01/20 Python
HTML5拖拉上传文件的简单实例
2017/01/11 HTML / CSS
阿联酋最好的手机、电子产品和家用电器网上商店:Eros Digital Home
2020/08/09 全球购物
《跨越百年的美丽》教学反思
2014/02/11 职场文书
政治表现评语
2014/05/04 职场文书
2015年收银员个人工作总结
2015/04/01 职场文书
酒店工程部主管岗位职责
2015/04/16 职场文书
婚礼嘉宾致辞
2015/07/28 职场文书
年中了,该如何写好个人述职报告?
2019/07/02 职场文书
《钢铁是怎样炼成的》高中读后感
2019/08/07 职场文书
pytorch Dropout过拟合的操作
2021/05/27 Python