我希望使用 Laravel 创建一个联接,如果联接引用不存在,它会选择整个表,否则会联接其他表。
DB::table('tInfo')
->join('tStaff', 'tStaff.tourID', '=', 'tInfo.tcode')->get()
tInfo
与 tStaff
是“一对多”关系,并且 tStaff
将具有链接到特定游览的行
我删除了“tStaff”引用,并注意到查询没有返回行(不包含错误)。我认为这是因为连接无效。
如何解决这个问题?
最佳答案
请尝试一下这个
DB::table('tInfo as inf')
->whereNotExists(function ($query) {
$query->select(DB::raw('tourID'))
->from('tStaff')
->whereRaw('inf.tcode= tStaff.tourID');
})
->get();
关于mysql - 连接存在引用的表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41734262/