首页 > 解决方案 > 如何在 laravel 中制作像下面这样的连接表

问题描述

你好,我想在 laravel 中的两个表之间进行连接,但是如果表 B 没有行查询返回 null。我想要的是这样的。

table A

id user_id description
1    1      something
2    1       apple
3    2       cherry

table B

user_id post_id vote
(with no records initial)

result table

    id user_id description post_id  vote
    1    1      something    null   null
    2    1       apple       null   null
    3    2       cherry      null   null

我怎样才能做到这一点?提前谢谢你,我为糟糕的英语道歉。

标签: mysqllaraveljoin

解决方案


你应该使用leftJoin

 DB::table("tableA")->leftJoin("tableB","tableA.user_id",'=','tableB.user_id')
           ->select(["tableA.id as id",'tableA.user_id as user_id','description','post_id','vote'])->get();

推荐阅读