因此,我正在製作一個模擬曲棍球聯盟的網站。使用雄辯的複雜查詢 - Laravel 4
我正在努力取得積分榜,這是它變得複雜的地方。
有2個會議。東和西。
在每個會議,有3個分割,對於舉例的目的,讓我們稱之爲A,B和C.
有每格5隊,小組1,小組2,團隊3,隊4,Team 5.
因此,這裏是棘手的地方。
積分榜由會議組成。舉例來說,東西方各有不同的榜樣。每個部門的頂級團隊自動播種到會議的前三名。
例如,A組的第1組有5分,A組的第2組有4分,B組的第4組有4分(其餘得分更少),C組第5組有3分(其餘少了)。 積分榜排名如下: 1-球隊1-積分-5分 2-球隊4-B組-4-0積分 3-球隊5-C部隊積分-3分 4-第2隊-A區-4分 ...
我的代碼是:
$teams_east = DB::query("SELECT a.*, (CASE WHEN b.scoreMax IS NULL THEN 1 ELSE 2 END) AS SortFiddle
FROM (SELECT teams.*, teamdetails.division, ((`nhl_wins` *2) + `nhl_ot` + `nhl_ties`) AS scoreMax
FROM teams
LEFT JOIN teamdetails ON teams.team_name = teamdetails.pro_name
WHERE teamdetails.conference ='Est' ) a
LEFT OUTER JOIN
(SELECT division, MAX((`nhl_wins` *2) + `nhl_ot` + `nhl_ties`) AS scoreMax
FROM teams
LEFT JOIN teamdetails ON teams.team_name = teamdetails.pro_name
WHERE teamdetails.conference ='Est' GROUP BY division ORDER BY `nhl_wins`,scoreMax LIMIT 3) b
ON a.division = b.division
AND a.scoreMax = b.scoreMax
ORDER BY SortFiddle DESC, a.scoreMax DESC, `nhl_wins` DESC, nhl_gf DESC, nhl_ga ASC");
但是DB ::查詢已被廢棄,再加上,我想,因爲這種相同的代碼將被用於地方用雄辯其他。
感謝您的幫助! –