Home  >  Article  >  Backend Development  >  Summary of common database operations implemented by Yii2 framework

Summary of common database operations implemented by Yii2 framework

高洛峰
高洛峰Original
2017-02-10 16:29:221370browse

This article mainly introduces the summary of common operations of database implemented by Yii2 framework. The editor thinks it is quite good, so I will share it with you now and give it as a reference. Come and take a look with the editor

General:

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

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:

String format, for example: 'status=1'

Hash format, for example: ['status' => 1, 'type' => 2]

Operator format, for example: [' like', 'name', 'test']

andFilterWhere()

orFilterWhere()

Active Record (hereinafter referred to as AR) provides an object-oriented interface to access data in the database. An AR class is associated with a data table, each AR object corresponds to a row in the table, and the attributes of the object (that is, the attribute of AR) are mapped to the corresponding columns of the data row. An activity record (AR object) corresponds to a row of the data table, and the attributes of the AR object map the corresponding columns of the row.

All additions, deletions and modifications here will use AR objects for mapping operations.

Add

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

Modify

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

Delete

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

Other

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();  //返回一个值指示是否包含查询结果的数据行;

The above is the entire content of this article. I hope it will be helpful to everyone’s study. I also hope that everyone will support the PHP Chinese website.

For more related articles on the summary of common database operations implemented by the Yii2 framework, please pay attention to the PHP Chinese website!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn