1

私は2つのテーブルscoregame. 各ゲームにはnスコアがあります。nゲームのスコアごとに取得したいと思います。だから私は得るでしょう:

round, score, game
==================
1      1      1
2      2      1
3      3      1
1      9      2
2      3      2

フィドルの例:

http://sqlfiddle.com/#!2/56434/1

4

1 に答える 1

2
SELECT  RoundNo, Score, ID
FROM
        (
            select  a.ID,
                    b.Score,
                    @sum := if(@nme = a.ID, @sum ,0) + 1 RoundNo,
                    @nme := a.ID
            from    game a
                    INNER JOIN scores b
                      ON a.ID = b.game_ID
                    CROSS JOIN
                    (select @nme := '', @sum := 0) vars
            order   by  a.ID
        ) s
ORDER   BY ID

出力

╔═════════╦═══════╦════╗
║ ROUNDNO ║ SCORE ║ ID ║
╠═════════╬═══════╬════╣
║       1 ║    14 ║  1 ║
║       2 ║    10 ║  1 ║
║       1 ║    19 ║  2 ║
║       2 ║    20 ║  2 ║
║       3 ║    25 ║  2 ║
╚═════════╩═══════╩════╝
于 2013-04-02T05:09:17.650 に答える