2016-07-10 11 views

Antwort

0

Ich denke, Sie sollten vor dem Bestellen der Ergebnisse gruppieren.

$all_players = DB::table('example_players')->leftJoin('example_votes', 'example_votes.from_player_id', '=', 'example_players.id') 
              ->select('example_players.id', 'example_players.name', 'example_players.display_name', 'example_players.role', 'example_players.picture', DB::raw("count(example_votes.id) as nbr_votes")) 
              ->groupBy('example_players.id') 
              ->orderBy('nbr_votes', 'desc')                 
              ->get(); 
+0

Hey, danke für deine Antwort. Ich habe es aber schon probiert und es ändert nichts. – Alex1

0
$all_players = DB::table('example_players')->leftJoin('example_votes', 'example_votes.from_player_id', '=', 'example_players.id') 
              ->select('example_players.id', 'example_players.name', 'example_players.display_name', 'example_players.role', 'example_players.picture', DB::raw("count(example_votes.id) as nbr_votes")) 
              ->groupBy('example_players.id')           
              ->orderBy(DB::raw("count(examples_votes.id)"),'desc')           
              ->get(); 

Es ist, weil die orderby nicht den Namen, den Sie das Feld nicht kennt hat mit so.

+0

-> orderBy (DB :: roh ("count (overwatch_votes.id)"), "desc") ändert die Reihenfolge, aber nicht von overwatch_votes.id desc – Alex1

+0

Das liegt daran, dass ich die Tabelle overwatch_votes in Ihrer Abfrage nicht sehen? Sie sollten zuerst dieser Tabelle beitreten, um darauf zu bestellen. – da1lbi3

+0

Ich habe meinen Code geändert. – da1lbi3

Verwandte Themen