yii2 数据库查询

1 篇文章 0 订阅

下面介绍一下 Yii2.0 对数据库 查询的一些简单的操作

User::find()->all(); 此方法返回所有数据;

User::findOne($id); 此方法返回 主键 id=1 的一条数据(举个例子);

User::find()->where(['name' => '小伙儿'])->one(); 此方法返回 ['name' => '小伙儿'] 的一条数据;

User::find()->where(['name' => '小伙儿'])->all(); 此方法返回 ['name' => '小伙儿'] 的所有数据;

User::find()->orderBy('id DESC')->all(); 此方法是排序查询;

User::findBySql('SELECT * FROM user')->all(); 此方法是用 sql 语句查询 user 表里面的所有数据;

User::findBySql('SELECT * FROM user')->one(); 此方法是用 sql 语句查询 user 表里面的一条数据;

User::find()->andWhere(['sex' => '男', 'age' => '24'])->count('id'); 统计符合条件的总条数;

User::find()->andFilterWhere(['like', 'name', '小伙儿']); 此方法是用 like 查询 name 等于 小伙儿的 数据

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

User::find()->batch(10); 每次取 10 条数据

User::find()->each(10); 每次取 10 条数据, 迭代查询

User::find()->select(['a','b','c'])   == select a,b,c from XXXX;查询多个字段

查询操作:

User::find()->where(['name' => 'username'])->one();   此方法返回 ['name' => 'username'] 的一条数据;
User::find()->where(['name' => 'username'])->all();   此方法返回 ['name' => 'username'] 的所有数据;

User::find()->andWhere(['sex' => '男', 'age' => '24'])->count('id');   统计符合条件的总条数;

新增操作:

$model = newUser();
$model->username = 'username';
$model->age      = '20';
$model->insert();

修改操作:
$User = User::findOne($id);
$User->name = 'zhangsan';
$User->save(); // 等同于 $User->update();

删除操作:

User::deleteAll('name = username');    删除 name = username 的数据;
User::findOne($id)->delete(); 删除主键为 $id变量 值的数据库
User::deleteAll('age > :age AND sex = :sex', [':age' => '20', ':sex' => '1']);  删除符合条件的数据;

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值