如何在一个查询(使用左联接)中从多个表中删除行。
查询:

DELETE `deadline`, `job` FROM `deadline` LEFT JOIN `job` ....

所以,我试着这样做:
DB::table('deadline', 'job')
    ->leftJoin('job', 'deadline.id', '=', 'job.deadline_id')
    ->where('deadline.id', $id)
    ->delete();

似乎laravel不支持从具有左连接的多个表中删除。
是否有支持的方法或解决方法?

最佳答案

看来我的方式是不可能的。所以,我就是这样做的。

$q = 'DELETE deadline, job FROM deadline LEFT JOIN job ...where deadline.id = ?';
$status = \DB::delete($q, array($id));

文档:http://laravel.com/docs/database#running-queries

10-04 12:41