sql >> データベース >  >> RDS >> Mysql

SELECTとは異なる条件に基づくSUM()

    合計をcaseステートメント内に入れて、caseが他の条件を評価し、条件がtrueであるレコードのみを合計することもできます...

      SELECT m.member_id, m.teamname, 
        Sum(Case When r.track_Id = '$chosentrack' 
             Then total_points Else 0 End) TotalChosenTrackPoints,
        Sum(Case When r.track_Id < '$chosentrack' 
             Then total_points Else 0 End) TotalLessThanChosenTrackPoints, 
        total_points as last_race_points  
     FROM members m
        Join members_leagues l
           On l.member_id = m.member_id  
        Join member_results r
           On r.member_id = m.member_id
     Where l.league_id = '$chosenleague'
        And l.start_race = '$chosentrack'
     Group By m.member_id
     Order By r.total_points Desc, 
         last_race_points  Desc, m.TeamName Desc  
    


    1. 文字列dd/MM/yyyyの日付をjava.sql.dateyyyy-MM-ddに変換します

    2. Laravel Auth::userが他のコントローラーに見つかりません

    3. PHP-レコードが正常に削除されたことを確認する方法

    4. pgadmin sqlクエリにパラメータ値を追加するにはどうすればよいですか?