2017-08-29 59 views
1

我有兩個表(車型具有相同的名稱作爲表)組:Laravel 5.4 - 通過計算並加入

StatusNames: id|name 

CurrentUserStatus: id|user_id|status_id 

目前CurrentUserStatus是空的,並且狀態名稱已插入多條記錄(活動,未激活,暫停,終止...)。

我需要從CurrentUserStatus獲取所有數據,並顯示每個狀態下有多少(給定當前表,每個狀態名旁邊應該有零(0))。

這可能與一個查詢?

+0

是的,你可以,但讓我清楚你想分組並計算來自'CurrentUserStatus'表的數字'status_id'列嗎? –

+0

是的,表格通過** status_id **連接(如$ this-> hasOne('App \ StatusNames') – Sasha

回答

1

所以,無論我以爲你可以做這樣的事情:

$dataset = CurrentUserStatus::whereHas('status') 
     ->with('status') 
     ->withCount('status') 
     ->orderBy('status_count', 'dsc') 
     ->get(); 

希望這有助於。

+0

有點幫助:)。我現在正在空集,但我想我會做到這一點:) – Sasha

+0

我很高興它的幫助。 –