一、查询
1. sql语句查询
sql查询传递条件参数的两种方式
返回多条数据,只查询到一条数据也以数组的方式返给前端,查不到返回[]
$name = 'alias';
$pwd = '123456';
Db::query('select * from user where name = :name and pwd = :pwd',[$name,$pwd]);
Db::query('select * from user where name =? and pwd =?',[$name,$pwd]);
2. 链式查询
1. where()条件
- where(字段名,表达式,查询条件)
Db::name('user')->where('name','like','%alias%')->select();
- where与 和 where或
参考tp5.0官方文档
where('字段名','表达式','查询条件');
whereOr('字段名','表达式','查询条件');
- where 混合查询
闭包
Db::table('user')->where(function ($query) {
$query->where('name', 'alias')->whereor('name', 'alias2');
})->whereOr(function ($query) {
$query->where('name', 'like', 'alias')->whereOr('name', 'like', 'alia2');
})->select();
- where实现 等于 的四种方式
// where(字段名,值)
Db::name('user')->where('name','alias2')->where('pwd',456) ->select();
// where(字段名,=,值)
Db::name('user')->where('name','=','alias2')->where('pwd','=',456) ->select();
// where([字段名=>字段值])
Db::name('user')->where(['name'=>'alias2','pwd'=>'456']) ->select();
// where(function ($query) { $query->where()})
Db::name('user')->where(function ($query) {
$query->where('name', 'alias2')->where('pwd', '456');
})->select();
2. 简单查询
返回单条、多条数据
返回指定列和所有数据
// 返回单条数据,查询多条数据也以对象的方式返第一条给前端,查不到返回null
Db::name('user')->where('name','alias2')->where('pwd',456) ->find();
// 返回多条数据,只查询到一条数据也以数组的方式返给前端,查不到返回[]
Db::name('user')->where('name','alias2')->where('pwd',456) ->select();
// 返回指定列的数据
Db::name('user')->where('name','alias2')->where('pwd',456)->field('id,name')->select(); // id name 列
Db::name('user')->where('name','alias2')->where('pwd',456)->field('id,name',true)->select(); // 除了 id name 的列
二、添加
- 添加单条
$data = ['name' => 'alias1', 'pwd' => '123','create_time' => Db::raw('now()')];
Db::name('user')->insert($data); // 成功返回 1
Db::name('user')->insertGetId($data); // 成功返回自增主键值
- 添加多条
$list = [
['name' => 'alias1', 'pwd' => '123'],
['name' => 'alias2', 'pwd' => '456'],
['name' => 'alias3', 'pwd' => '789']
];
Db::name('user')->insertAll($list); //成功返回 添加成功的条数
- 助手函数方式
db('user')->insert($data); // 添加单条数据,成功返回 1
db('user')->insertAll($list); // 添加多条数据,成功返回 添加成功的条数
- 快捷方式
$data = ['name' => 'alias1', 'pwd' => '123'];
Db::table('data')->data($data)->insert();
三、删除
删除成功返回删除成功的条数
- 删除单条
Db::name('user')->delete(1); // 根据自增主键删除
Db::name('user')->where('id',1)->delete();
Db::name('user')->where('id','=',1)->delete();
- 删除多条
Db::name('user')->delete([1,2,3]); // 根据自增主键删除
Db::name('user')->where('id','<',3)->delete();
- 助手函数方式
db('user')->delete(1);
db('user')->where('id','<',3)->delete();
四、修改
修改成功返回修改成功的条数
- 修改单条
$data = ['name' => 'mac1','update_time' => Db::raw('now()')];
Db::name('user')->where('id', 2)->update($data); //成功返回1,没有修改返回0
- 修改多条
无 - 助手函数方式
$data = ['name' => 'mac1'];
db('user')->where('id', 2)->update($data); //成功返回1,没有修改返回0
网友评论