0

MySQL を使用してクエリを実行し、チームが 2 つ以上の DD を記録したゲームを表示しています。

結果は次のようになります。

ここに画像の説明を入力

私の問題は、プレイヤーの列に表示されるプレイヤーが 1 人しか得られないことです (前述のように、2 人以上のプレイヤーが DD を持っています)。

これが私のコードです:

  SELECT * FROM 

        (SELECT game_Date, 
        game_GameID,
        game_SeasonID,
        game_TeamCode,
        teams_Name,
                    ........ other PTS/AST/REB stats too!
        stats1_GameID,
        Sum(stats1_DD) AS 'TotGameDD'

        FROM game INNER JOIN teams INNER JOIN stats1
        ON 
        teams_TeamCode = game_TeamCode
        AND
        game_GameID = stats1_GameID
    AND
    game_PlayerID = player_PlayerID

        GROUP BY game_GameID
        HAVING Sum(stats1_DD) >1
        ORDER BY Sum(stats1_DD) desc) t

    FROM game INNER JOIN teams INNER JOIN stats1
    ON 
    teams_TeamCode = game_TeamCode
    AND
    game_GameID = stats1_GameID


    GROUP BY game_GameID, stats1_DD
    HAVING Sum(stats1_DD) >1
    ORDER BY Sum(stats1_DD) desc





  FROM game INNER JOIN teams INNER JOIN stats1
    ON 
    teams_TeamCode = game_TeamCode
    AND
    game_GameID = stats1_GameID


    GROUP BY game_GameID, stats1_DD
    HAVING Sum(stats1_DD) >1
    ORDER BY Sum(stats1_DD) desc

これは私が立ち往生しているところです。私も過去にこのタイプの問題に行き詰まりました。DD を持つすべてのプレイヤーを通過し、プレイヤー名、PTS / AST、および TOTREB 統計を返すループが必要だと思います。

私はそれを実行する能力を集めることができないようです。

任意のヘルプまたは方向性は、非常に高く評価されています。

ありがとう、

ケン

4

1 に答える 1

1

DDとは、ダブルダブルを意味すると思います。

列の値のコンマ区切りリストを提供する group_concat を使用してみることができます: http://sqlite.awardspace.info/syntax/examples/group_concat.htm

于 2013-01-01T20:30:53.320 に答える