0

すべてのレースとレーサーの情報を含むデータベースを持つカー レース会社を所有しているとします。データベースには、すべてのレーサー (RacerID、名、姓、contactInfo など) のテーブルと、すべてのレース (RaceID、racer1、racer1、winingRacerID、winingTime) の別のテーブルがあります。

各レーサーの勝率はどのように計算しますか?

4

1 に答える 1

0

次のクエリは、各レーサーの勝率を示します

クエリ、SQL フィドルのデモ

 select RacerID, FirstName, LastName, count(Races.WinningRacerID) * 100.0 / (select count(1) from Races) as WinningPercentage
 from
    Racers
    left join Races on Racers.RacerID = Races.WinningRacerID
 group by
    RacerID, FirstName, LastName

注: 0 による除算エラーをチェックする必要がない場合は、Race テーブルに少なくとも 1 レコードあると仮定します。

于 2013-07-23T00:15:09.527 に答える