我對這個查詢有疑問:
$winecount=App\Models\OrderProduct::where('id_order',$item->id_order)->where('id_wine',$item->id_wine)->groupBy('id_wine')->count();
我得到:
| id_order | id_wine |
|---|---|
| 1 | 1 |
| 1 | 1 |
| 1 | 1 |
| 1 | 2 |
| 1 | 2 |
| 1 | 2 |
我想得到:
| id_wine | 數量 |
|---|---|
| 1 | 3 |
| 2 | 3 |
如何修改查詢,以便我有每個“id_wine”的計數?
為清楚起見,這是我的觀點:
Bottiglie ordinate:
Keane Nieves x10
Keane Nieves x10
Keane Nieves x10
Lucy Rasmussen x10
Lucy Rasmussen x10
Lucy Rasmussen x10
Nayda Duncan x10
Nayda Duncan x10
Nayda Duncan x10
Ruth Boyd x10
Ruth Boyd x10
Ruth Boyd x10
代替:
Bottiglie ordinate:
Keane Nieves x30
Lucy Rasmussen x30
Nayda Duncan x30
Ruth Boyd x30
uj5u.com熱心網友回復:
你計算整個結果。但你必須計算按部分分組。該查詢將幫助您:
$user_info = DB::table('order_products')
->select('id_wine', DB::raw('count(*) as qty'))
->groupBy('id_wine')
->get();
由問題所有者建議
$winecount = OrderProduct::selectRaw('count(*) as qty')
->groupBy('id_wine')
->get();
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/416993.html
標籤:
