Laravel框架学习(数据库高级查询)

1、连接查询(join)

连接查询指的是将两张表或多张表关联到一起进行查询,获取一个表的行与另一个表的行匹配的数据。常见的连接查询包括内连接(等值连接)、左(外)连接、右(外)连接和交叉连接(完全连接)等。
我们将用户表users和文章表posts关联到一起进行查询,在此之前,我们先创建posts表,其字段及初始值如下:
这里写图片描述
其中user_id对应users表中的用户id。

1.1 内连接

内连接用于获取两张表结果集的交集部分,我们可以使用查询构建器的join方法进行内连接查询:

$users = DB::table('users')->join('posts','users.id','=','posts.user_id')->get();
dd($users);

显示结果如下:

array:3 [▼
  0 => {
  #226 ▼
    +"id": 1
    +"name": "Laravel"
    +"email": "laravel@test.com"
    +"password": "123"
    +"remember_token": "x"
    +"created_at": "0000-00-00 00:00:00"
    +"updated_at": "0000-00-00 00:00:00"
    +"title": "test1"
    +"content": "test1"
    +"user_id": 1
  }
  1 => {
  #227 ▼
    +"id": 2
    +"name": "Laravel"
    +"email": "laravel@test.com"
    +"password": "123"
    +"remember_token": "x"
    +"created_at": "0000-00-00 00:00:00"
    +"updated_at": "0000-00-00 00:00:00"
    +"title": "test2"
    +"content": "test2"
    +"user_id": 1
  }
  2 => {
  #228 ▼
    +"id": 3
    +"name": "Academy"
    +"email": "academy@test.com"
    +"password": "123"
    +"remember_token": "y"
    +"created_at": "0000-00-00 00:00:00"
    +"updated_at": "0000-00-00 00:00:00"
    +"title": "test
  • 0
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值