2017-06-22 3 views
0

Ich habe 2 Tabellen, die basierend auf 2 Where-Klauseln aktualisieren müssen ich eine dritte Tabelle enthalten, die die anderen 2 Tabellen zusammenfügen würde. Ich kann nicht arbeiten.PHP MySQL Multiple Update

UPDATE (list INNER JOIN Players ON list.Team_ID = Players.Players_Team_ID) INNER JOIN Users ON list.Team_ID = Users.User_Team_ID 
SET 
Players.Players_Team_ID = 6, Users.users_bank = users_bank-15000000, list.transfers = list.transfers+1 
WHERE Users.User_ID=14 AND Players.Players_ID=3; 

Ohne die dritte Tabelle, die ein Update mit wäre es

sein, mich
UPDATE (list INNER JOIN Players ON list.Team_ID = Players.Players_Team_ID) INNER JOIN Users ON list.Team_ID = Users.User_Team_ID 
SET 
Players.Players_Team_ID = 6, Users.users_bank = users_bank-15000000 
WHERE Users.User_ID=14 AND Players.Players_ID=3; 

Kann mir jemand helfen, diese Arbeit zu bekommen?

Antwort

1

Sie können Ihre Abfrage wie folgt unter Verwendung update-join Syntax ändern, aber ich sehe nicht, warum Sie JOIN mit anderen Tabellen benötigen. Ihre UPDATE Aussagen könnten einzelne oder einzelne Update auch

UPDATE list,Players,users 
INNER JOIN Players ON list.Team_ID = Players.Players_Team_ID 
INNER JOIN Users ON list.Team_ID = Users.User_Team_ID 
SET Players.Players_Team_ID = 6, 
Users.users_bank = users_bank - 15000000, 
list.transfers = list.transfers + 1 
WHERE Users.User_ID=14 
AND Players.Players_ID=3; 
+0

UPDATE Liste, Spieler, Benutzer sein INNER Spieler list.team_id = players.players_team_id JOIN INNER JOIN Benutzer ON list.team_id = users.user_team_id SET Spieler .players_team_id = 5, users.users_bank = users_bank - 200000 WHERE users.user_id = 29 UND players.players_id = 2 MySQL sagte: Dokumentation # 1066 - Nicht eindeutige Tabelle/Alias: 'Spieler' Dies ist, was Ich bekomme, wenn ich es versuche – Dan