2016-11-20 3 views
1

ヘルプpls。 練習: "マッチごとに3ゴールを超えるすべての選手があなたの給与が5%増加するようにデータベースを変更してください。" どうすればいいですか?私はこのコードを試してみましたが、彼はエラーにエラー:1093

update tbplayer 
set salary_player=(salary_player*1.0) 
where tbplayer.name_player in (
select tbjplayer.name_player 
from tbjplayer inner join tbplay 
on tbplayer.cod_player = tbplay.cod_player 
where tbplay.numberGoalsPlayer >= 3) 

テーブル構造与えている: http://textuploader.com/d5vlh

エラーコードを:1093あなたが句0.000秒

から更新のターゲット表「tbjogador」を指定することはできません
+0

ためdinamically一時テーブルを作成するために、MySQLを強制することができますがすることはできませんクエリと同じテーブル、したがってエラーを更新します。あなたはテーブル構造を共有できますか? –

答えて

0

あなたが必要な値を選択するために使用されるテーブルを更新することはできませんが、あなたがこの

update tbplayer 

     set salary_player=(salary_player*1.0) 
     where tbplayer.name_player in (select t.my_name from ( 

      select tbjplayer.name_player my_name 
      from tbjplayer inner join tbplay 
      on tbplayer.cod_player = tbplay.cod_player 
      where tbplay.numberGoalsPlayer >= 3) t) 
+0

THx男あなたはすばらしい人ですkkk –

+0

@MarcoAntonioありがとう..しかし、kkk ..(私は見たことがありません)..と私の答えが正しい場合はそれを受け入れるようにマークしてください...こちらを参照してください。 http:// meta.stackexchange.com/questions/5234/how-does-accepting-an-answer-work – scaisEdge

+0

申し訳ありません兄弟、私はここに新しいです...そして私はちょうどあなたの答えを受け入れます。 –

関連する問題