ThinkPHP中框架查询
2019-07-23 08:42:10来源:博客园 阅读 ()
1.查询多条数据
1.1静态调用all方法或者select方法
// 获取所有数据 all 和 select $list = User::all(); // 根据主键获取多个数据all 和 select where id in (1,2,3) $list = User::all('1,2,3'); $list = User::all([1,2,3]); //或者使用数组查询(只能用all不能用select) where status = 1 $list = User::all(['status'=>1]);
1.2动态调用all方法或者select方法
$user = new User(); //查询所有数据all 和 select $list = $user->select(); //根据主键查询多条数据all 和 select $list = $user->select('1,2,3'); $list = $user->select([1,2,3]); //或者使用数组查询(只能用all不能用select) $list = $user->all(['status'=>1]);
select方法和All方法的应用:[obj, obj]
2.查询一条数据
2.1静态调用get方法或者find方法
//取出主键为1的数据 where id = 1 $user = \app\admin\model\User::get(1); $user = \app\admin\model\User::find(1); //使用数组查询(非主键字段),只能用get不能用find where name = 'thinkphp' $user = User::get(['name' => 'thinkphp']); //取出第一条数据,只能用find不能用get $user = User::find();
2.2动态调用get方法或者find方法
$user = new User(); //取出主键为1的数据 $info = $user->find(1); $info = $user->get(1); //使用数组查询(非主键字段),只能用get不能用find $info = $user->get(['name' => 'thinkphp']); //取出第一条数据,只能用find不能用get $info = $user->find();
注:返回的模型对象,可以直接当做数组使用,也可以调用toArray() 直接转化为数组。find方法和Get方法的应用:
3.其他查询方法
3.1where方法
$info = User::where('id','=','1')->find(); $info = User::where('id','1')->find(); $info = User::where('name','like','%thinkphp%')->select();
3.2链式操作
$model = new Address(); $model->field('id name')->select(); //指定要查询的字段,原生sql中select后面的字段 $model->order('id desc,time desc')->select(); //相当于原生sql中的order by $model->limit(3)->select(); //相当于原生sql中的limit条件 $model->limit(0,3)->select(); $model->limit('0,3')->select(); $model->group('cate_id')->select(); //相当于原生sql中的group by $model->having('id>3')->select(); //相当于原生sql中的having条件 $model->alias('a')->join('think_user_type t','a.id=t.user_id', 'left')->select(); //alias方法设置别名,join方法连表查询
3.3聚合查询
在模型中也可以调用数据库的聚合方法进行查询
3.4数据字段查询
查询一条记录的一个字段的值 Goods::where(‘id’, 2)->value(‘goods_name’); 查询多条记录的一个字段的值,返回一个一维索引数组 Goods::where(‘id’, ‘GT’, 2)->column(‘goods_name’); 查询多条记录的一个字段的值,以id字段值作为数组索引 Goods::where(‘id’, ‘GT’, 2)->column(‘goods_name’, ‘id’);
原文链接:https://www.cnblogs.com/shineguang/p/11144781.html
如有疑问请与原作者联系
标签:
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有
- ThinkPHP3.1.x修改成功与失败跳转页面的方法 2020-03-22
- ThinkPHP分页类使用详解 2020-02-24
- ThinkPHP验证码使用简明教程 2020-02-24
- thinkPHP5项目中实现QQ第三方登录功能 2020-02-19
- PHP实现的折半查询算法示例 2020-02-17
IDC资讯: 主机资讯 注册资讯 托管资讯 vps资讯 网站建设
网站运营: 建站经验 策划盈利 搜索优化 网站推广 免费资源
网络编程: Asp.Net编程 Asp编程 Php编程 Xml编程 Access Mssql Mysql 其它
服务器技术: Web服务器 Ftp服务器 Mail服务器 Dns服务器 安全防护
软件技巧: 其它软件 Word Excel Powerpoint Ghost Vista QQ空间 QQ FlashGet 迅雷
网页制作: FrontPages Dreamweaver Javascript css photoshop fireworks Flash