如何在一个查询(使用左联接)中从多个表中删除行。
查询:
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