2016-11-20 68 views
1

請幫我。 練習如下: 「修改數據庫,以便每場比賽進球超過3個的所有球員的薪水增加5%。」 我該怎麼做?我想這個代碼,但他是給錯誤Mysql錯誤: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您不能指定目標表「tbjogador」的更新在FROM子句0.000秒

+0

到dinamically創建臨時表你不能查詢和更新同一張表,因此出現錯誤。你能分享表結構嗎? –

回答

0

不能更新用於選擇您需要的值的表,但你可以強制MySQL這個

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

不好意思的兄弟,我是新來的......我只是接受你的回答 –

相關問題