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 Smarty模板生成html文档的方法
Apr 12 PHP
php 抽象类的简单应用
Sep 06 PHP
wamp下修改mysql访问密码的解决方法
May 07 PHP
字符串长度函数strlen和mb_strlen的区别示例介绍
Sep 09 PHP
PHP统一页面编码避免乱码问题
Apr 09 PHP
如何解决phpmyadmin导入数据库文件最大限制2048KB
Oct 09 PHP
示例详解Laravel的注册重构
Aug 14 PHP
PHP类的特性实例分析
Sep 28 PHP
PHP实现的微信公众号扫码模拟登录功能示例
May 30 PHP
微信公众号之主动给用户发送消息功能
Jun 22 PHP
PHP实现创建一个RPC服务操作示例
Feb 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
smarty模板引擎中自定义函数的方法
2015/01/22 PHP
wampserver改变默认网站目录的办法
2015/08/05 PHP
PHP单态模式简单用法示例
2016/11/16 PHP
JavaScript入门教程(5) js Screen屏幕对象
2009/01/31 Javascript
JS+CSS实现经典的左侧竖向滑动菜单效果
2015/09/23 Javascript
jQuery+AJAX实现遮罩层登录验证界面(附源码)
2020/09/13 Javascript
Bootstrap每天必学之折叠
2016/04/12 Javascript
JS动态创建元素的两种方法
2016/04/20 Javascript
基于Bootstrap的Metronic框架实现条码和二维码的生成及打印处理操作
2016/08/29 Javascript
Javascript 普通函数和构造函数的区别
2016/11/05 Javascript
JQueryMiniUI按照时间进行查询的实现方法
2017/06/07 jQuery
基于jQuery实现手风琴菜单、层级菜单、置顶菜单、无缝滚动效果
2017/07/20 jQuery
javascript浏览器用户代理检测脚本实现方法
2017/10/27 Javascript
React.Js添加与删除onScroll事件的方法详解
2017/11/03 Javascript
Vue2.0设置全局样式(less/sass和css)
2017/11/18 Javascript
jQuery实现获取选中复选框的值实例详解
2018/06/28 jQuery
node实现生成带参数的小程序二维码并保存到本地功能示例
2018/12/05 Javascript
vue使用exif获取图片经纬度的示例代码
2020/12/11 Vue.js
[04:10]DOTA2英雄梦之声_第11期_圣堂刺客
2014/06/21 DOTA
python3读取MySQL-Front的MYSQL密码
2017/05/03 Python
Python多进程写入同一文件的方法
2019/01/14 Python
python爬虫神器Pyppeteer入门及使用
2019/07/13 Python
python爬虫 正则表达式解析
2019/09/28 Python
使用django和vue进行数据交互的方法步骤
2019/11/11 Python
python tkinter 设置窗口大小不可缩放实例
2020/03/04 Python
从python读取sql的实例方法
2020/07/21 Python
Python extract及contains方法代码实例
2020/09/11 Python
英国知名美妆护肤在线商城:Zest Beauty
2018/04/24 全球购物
Vivo俄罗斯官方在线商店:中国智能手机品牌
2019/10/04 全球购物
简单说说tomcat的配置
2013/05/28 面试题
遇到的Mysql的面试题
2014/06/29 面试题
网页美工求职信范文
2014/04/17 职场文书
流动人口婚育证明范本
2014/09/26 职场文书
甲乙双方合作协议书
2014/10/13 职场文书
酒店仓管员岗位职责
2015/04/01 职场文书
车间安全生产管理制度
2015/08/06 职场文书