[英]Use Distinct with join table Mysql laravel 5
我的老板有一項任務要使用 laravel 5 顯示來自 mysql 的數據。他給了我這個 SQL 查詢
SELECT DISTINCT loans.loan_number, borrower.brate, loans.loint, loan_offer.amount,
loans.lterm,SUBSTRING(repayment_lender.repay_due_date,4,2)
FROM loans, loan_offer, borrower, repayment_lender,LENDER
WHERE loans.id = loan_offer.loan_id
AND loans.borrower_id = borrower.id
AND repayment_lender.loans_id = loans.id
AND lender.id = loan_offer.lender_id
AND lender.id = 3
我在我的控制器中使用了這段代碼
$data_loanoffers = DB::table('loans')->join('loans', 'loans.id', '=', 'repayment_lender.loans_id')
->join('loans', 'loans.id', '=', 'loan_offer.loan_id')
->join('borrower', 'borrower.id', '=', 'loans.borrower_id')
->join('loan_offer', 'loan_offer.lender_id', '=', 'lender.id')
->where('lender.id',$l_id)->distinct()->get();
return view('account.investor_portfolio',[
'data_loanoffers' => $data_loanoffers,
]);
並在視圖中使用此代碼來顯示數據
@foreach($data_loanoffers as $loans)
<tr>
</td>
<td>{{$loans->loan_number}}</div>
<td> {{$borrower->brate}} </div>
<td> {{$loans->loint}} </div>
<td> {{$loan_offer->amount}}</div>
<td> {{$loans->lterm}}</div>
<td> ?? </div>
</tr>
@endforeach
我是 laravel 5 的新手,我不知道我的代碼錯誤在哪里。 也許這里的主人可以幫助我? 提前致謝。
您需要選擇一些列,以便可以在唯一字段上應用不同。
我只是通過使用 laravel 的查詢構建器來解決我的解決方案
$data_loanoffers = DB::select( DB::raw("SELECT DISTINCT loans.loan_number, borrower.brate, loans.loint, loan_offer.amount,loans.lterm,SUBSTRING(repayment_lender.repay_due_date,4,2) as DueDate
FROM loans, loan_offer, borrower, repayment_lender,LENDER
WHERE loans.id = loan_offer.loan_id
AND loans.borrower_id = borrower.id
AND repayment_lender.loans_id = loans.id
AND lender.id = loan_offer.lender_id
AND lender.id = '$l_id' ") );
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.