您现在的位置是:首页 > 经验记录>Laravel日记>laravel左连接leftJoin多条where语句 网站首页 Laravel日记
laravel左连接leftJoin多条where语句
通常情况下我们在做leftjoin连接时需要对不止一个条件进行进行匹配,这时候就需要使用闭包方式,如下:
leftjoin('db', function ($join) {···});
leftjoin多条件查询,无非以下三种情况。
并且关系(&&)且为字段名称,使用on,代码示例如下:
$roomUuid = 1;
$chatInfo = DB::table('chat_info')
->where('chat_info.room_uuid', $roomUuid)
->leftJoin('user_rooms', function ($join) {
$join->on('user_rooms.user_uuid', '=', 'chat_info.user_uuid')
->on('user_rooms.room_uuid', '=', 'chat_info.room_uuid');
})
或者关系(||),将on改为orOn,代码示例如下:
$roomUuid = 1;
$chatInfo = DB::table('chat_info')
->where('chat_info.room_uuid', $roomUuid)
->leftJoin('user_rooms', function ($join) {
$join->on('user_rooms.user_uuid', '=', 'chat_info.user_uuid')
->orOn('user_rooms.room_uuid', '=', 'chat_info.room_uuid');
})
多条件查询,使用where,并使用use传递参数,代码示例如下:
$roomUuid = 1;
$chatInfo = DB::table('chat_info')
->where('chat_info.room_uuid', $roomUuid)
->leftJoin('user_rooms', function ($join) use ($chatInfo) {
$join->on('user_rooms.user_uuid', '=', 'chat_info.user_uuid')
->where('user_rooms.room_uuid', '=', $chatInfo);
})
原文地址:http://www.fidding.me/article/40
————————————————
版权声明:本文为CSDN博主「lxw1844912514」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/lxw1844912514/java/article/details/100027847
随机推荐
- 可扩展高可用 Seafile 集群
- linux(ubuntu18.04)虚拟机目录挂载映射到windows目录
- CentOS8 yum 报错 404 for http://mirrors.cloud.aliyuncs.com/centos/8/AppStream
- 自己的服务器(本地物理或者云服务器),可以搭建哪些方便自己使用、有意思的服务呢?
- laravel 中使用的pdf 扩展包 laravel-snappy(已解决中文乱码)
- Laravel软删除操作以及回收站功能实现
- ubuntu16环境下,PHP7.0所有扩展简易安装
- 基于laravel6.2+laravel-permission扩展搭建的后台权限系统
- CentOS7 轻松部署 Laravel 应用
- 使用Golang写一个站点的sitemap生成工具,可命令指定站点url,输出地址,并发数等






