mysql - 如何在 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
我怎样才能做到这一点?提前谢谢你,我为糟糕的英语道歉。
解决方案
你应该使用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();
推荐阅读
- php - Wordpress 自定义侧边栏,小部件出现在标签之外
- typescript - TypeScript: tuple type to object type
- apache-kafka - Kafka Streams Listing and Trying 描述了不属于拓扑的主题
- excel - 将日期复制到列中的第一个空单元格中
- android - 如何在画布绘图期间忽略 Android 中的高对比度辅助功能选项?
- excel - HRESULT 异常:0x800A03EC(尝试通过 PowerShell 修改 Excel 中的单元格)
- android - 如何简单地将字符串从 android studio (kotlin) 传递到 arduino 串行蓝牙模块 (HC-05)?
- bash - Correct test for values in if statement in Bash
- swift - 知道平移手势何时通过视图边界
- excel - 如何使 VBA 命令按钮搜索提供的输入并更改状态(如果存在)?