Yii2框架 數據庫常用操作


通用:

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();    //返回一個值指示是否包含查詢結果的數據行;

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM