データベースに 4 つの主要なテーブルがあります。
- シーズン --> シーズン ID
- トライアル --> トライアルID
- コンペティション --> CID、名前
- キャンプ --> キャンプID,ディビジョンID(FK)
- 部門 ---> 部門 ID
- 出場者 --->出場者ID
現在、競技者は部門に所属している/部門のメンバーです。
次に、師団はキャンプに属します。
これはすべて、パフォーマンス テーブルにつながります。
性能表
SeasonID|TrialID|CampID|DivID|CompetionID|CtestantID|Score1 |Score2 |Total
1 1 1 1 1 1 20 20 40
1 1 1 1 2 1 20 15 30
1 2 1 1 1 2 10 5 15
1 2 1 1 2 2 5 5 10
1 2 1 1 1 1 10 30 40
1 2 1 1 2 1 20 10 30
このパフォーマンス テーブルにクエリを実行して、各競技会の各競技者の競技名、合計得点、ランク (合計得点に対する順位) をトライアル別およびシーズン別に取得するにはどうすればよいですか?
例:
シーズン 1 とトライアル 2 では、次のものが必要です。
SeasonID| TrialID | ContestantID| Competition | TotalScore | Rank
1 2 1 1 40 1
1 2 2 1 15 2
1 2 1 2 30 1
1 2 2 2 10 2
どうすればいいですか?テーブル変数、ピボット、および結合を試しましたが、競争によってのみランク付けできますが、結果を集計して上記の結果を得る方法がわかりません!