【发布时间】:2023-02-21 13:33:09
【问题描述】:
我必须使用三个不同的表来输出数据,并且它们必须满足某些条件。
->where('borrows.late_return_status', '=', 1)
->where('borrows.return_date', '=', null)
而且,我需要允许用户使用名称或 IC 搜索列表。
->where('borrowers.borrower_name', 'like', '%'.$search.'%')
->orWhere('borrowers.IC', 'like', '%'.$search.'%')
我的问题是满足orWhere条件时连必要条件都忽略了,没有late_return_status的数据显示为1。
这是完整的代码。
$late_books = Borrow::join('books', 'borrows.book_id', '=', 'books.id')
->join('borrowers', 'borrows.borrower_id', '=', 'borrowers.id')
->where('borrowers.borrower_name', 'like', '%'.$search.'%')
->orWhere('borrowers.IC', 'like', '%'.$search.'%')
->where('borrows.late_return_status', '=', 1)
->where('borrows.return_date', '=', null)
->get([
'borrowers.borrower_name', 'borrowers.IC', 'borrowers.phone_no',
'books.ISBN', 'books.book_title', 'books.year',
'books.author', 'books.publisher_name',
'borrows.issue_date', 'borrows.due_date'
]);
【问题讨论】:
标签: php laravel eloquent laravel-8