我有以下查詢:排序依據計數出現在錯誤的順序雄辯查詢生成器(Laravel 4)
public static function artists_most_popular() {
$artists_most_popular = DB::table('artists')
->join('fanartists', 'artists.id', '=', 'fanartists.artist_id')
->orderBy(DB::raw('count(*)', 'DESC'))
->groupBy('artists.id')
->take(50)
->get();
return $artists_most_popular;
}
你可以從查詢看到,我想數據出現在由降序排列artist_id在fanartists表中顯示的次數。但是,當我使用「foreach」並輸出這些數據時,它會按升序顯示。任何想法爲什麼發生這種情況?我在SQL Pro中使用了以下查詢,它的工作原理如下:
select *, COUNT(*)
from artists
join fanartists on artists.id = fanartists.artist_id
group by artists.id
order by (COUNT(*)) desc
這完美地工作。謝謝! – user1072337