使用Laravel查询构建器和LEFT JOIN删除行

tas*_*ski 3 php mysql left-join sql-delete laravel-4

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

DELETE `deadline`, `job` FROM `deadline` LEFT JOIN `job` ....
Run Code Online (Sandbox Code Playgroud)

所以,我这样尝试:

DB::table('deadline', 'job')
    ->leftJoin('job', 'deadline.id', '=', 'job.deadline_id')
    ->where('deadline.id', $id)
    ->delete();
Run Code Online (Sandbox Code Playgroud)

似乎Laravel不支持从具有左联接的多个表中删除。

有受支持的方法或解决方法吗?

tas*_*ski 5

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

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

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