首页 > Web开发 > 详细

thinkphp 5中的混合查询

时间:2020-05-22 18:19:52      阅读:65      评论:0      收藏:0      [点我收藏+]
1.手册样例thinkphp 5.0
Db::table(‘think_user‘) ->where(‘name‘,[‘like‘,‘thinkphp%‘],[‘like‘,‘%thinkphp‘]) ->where(function($query){ $query->where(‘id‘,[‘<‘,10],[‘>‘,100],‘or‘); }) ->select();
相当于sql语句:
SELECT * FROM `think_user` WHERE ( `name` LIKE ‘thinkphp%‘ AND `name` LIKE ‘%thinkphp‘ ) AND ( `id` < 10 or `id` > 100 )
2.手册样例 thinkphp 5.1
Db::table(‘think_user‘)
    ->where(‘name‘, [‘like‘, ‘thinkphp%‘], [‘like‘, ‘%thinkphp‘])
    ->where(function ($query) {
        $query->where(‘id‘, [‘<‘, 10], [‘>‘, 100], ‘or‘);
    })
    ->select();
相当于sql语句:
SELECT * FROM `think_user` WHERE ( `name` LIKE ‘thinkphp%‘ AND `name` LIKE ‘%thinkphp‘ ) AND ( `id` < 10 or `id` > 100 )
3.function($query)传参数用use()
样例:
Db::table(‘think_user‘)
->where($where)
->where(function($query) use($group_id){
$query->where(Db::raw("group_id is null or group_id = ‘$group_id‘")); //Db::raw()可以直接写sql语句查询
})
->select();
Db::table(‘think_user‘)

thinkphp 5中的混合查询

原文:https://www.cnblogs.com/luqiang213917/p/12938816.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!