ホームページ  >  記事  >  バックエンド開発  >  Yii2 フレームワークは一般的なデータベース操作の分析を実装します

Yii2 フレームワークは一般的なデータベース操作の分析を実装します

不言
不言オリジナル
2018-06-15 14:58:101725ブラウズ

この記事は、Yii2 フレームワークで実装されたデータベースの一般的な操作の概要を中心に紹介しています。編集者が非常に優れていると考えたので、参考として共有します。編集者をフォローして見てみましょう。

全般:

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

クエリ:

クエリ:

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

選択:

$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 (Active Record、以下 AR) は、データベース内のデータにアクセスするためのオブジェクト指向インターフェイスを提供します。 AR クラスはデータ テーブルに関連付けられ、各 AR オブジェクトはテーブル内の行に対応し、オブジェクトの属性 (つまり、AR の属性) はデータ行の対応する列にマップされます。アクティビティ レコード (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 中国語 Web サイトに注目してください。

関連する推奨事項:

yii2 コンポーネントはドロップダウン ボックス検索機能を実装します

Yii2 が複数の検索を実装する方法同時にフィールド

配列とオブジェクトに基づく Yii モデルクエリについて

##

以上がYii2 フレームワークは一般的なデータベース操作の分析を実装しますの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。