私は、別のテーブルの合計でテーブルを単純に更新しようと思っていましたが、何らかの理由で1つの行しか更新していません。ここではテーブルから関連する情報がどのように見えるかです:別のテーブルからSUMを使ってテーブルを更新する
ゲーム
gameplayer|points
----------------
John |5
Jim |3
John |3
Jim |4
playercareer
playercareername|playercareerpoints
-----------------------------------
John |0
Jim |0
今、最終的に、私は後にこのように見えるように、最後のテーブルを希望アップデートを実行中:
player私はこの答えを見つけることができないよう
UPDATE playercareer
SET playercareer.playercareerpoints =
(
SELECT
SUM(games.points)
FROM games
WHERE
playercareer.playercareername=games.gameplayer
)
:キャリア
playercareername|playercareerpoints
-----------------------------------
John |8
Jim |7
これは私が最初の行のみを更新することを試みたクエリがあります。あなたの時間とアドバイスをお寄せいただきありがとうございます!
SQL Serverを使用していますか? –
申し訳ありませんが、私はMySQL 5.5.16を使用しています。 – BigJay
私はあなたのコードをSQL Serverでテストしたところ、うまく動作します(http://sqlfiddle.com/#!3/97125/2)。おそらくあなたはあなたのプレイヤーの名前を確認するべきです(多分1つは空白があり、一致することはできません)。最終的には、名前の代わりにIDを使用し、リレーショナルテーブルを使用することをおすすめします。 –