Beim Ausführen von MySQL-Abfragen, die eine Aktualisierung erfordern Wenn Sie in derselben Abfrage auf eine Tabelle verweisen und diese als Datenquelle referenzieren, tritt möglicherweise die Fehlermeldung „Tabelle wurde zweimal angegeben“ auf. Dieser Fehler tritt auf, wenn dieselbe Tabelle sowohl das Ziel der UPDATE-Anweisung ist als auch als separate Tabelle in der Unterabfrage erscheint, die zur Bestimmung der Aktualisierungskriterien verwendet wird.
Um diesen Fehler zu beheben und die gewünschte Tabelle erfolgreich zu aktualisieren, befolgen Sie diese Schritte Schritte:
SELECT m2.branch_id FROM manager AS m2 WHERE (m2.branch_id, m2.year) IN (...)
SELECT * FROM (SELECT m2.branch_id FROM manager AS m2 WHERE (m2.branch_id, m2.year) IN (...)) AS subquery
UPDATE manager SET status = 'Y' WHERE branch_id IN ( SELECT branch_id FROM subquery );
Durch die Verwendung einer abgeleiteten Tabelle vermeiden Sie die Angabe der Managertabelle als Ziel und Datenquelle, wodurch der Fehler „Tabelle wurde zweimal angegeben“ behoben wird. Diese Technik stellt sicher, dass die Unterabfrage nur einmal referenziert wird und ermöglicht die erfolgreiche Ausführung der UPDATE-Anweisung.
Das obige ist der detaillierte Inhalt vonWarum erhalte ich in MySQL-UPDATE-Abfragen die Fehlermeldung „Tabelle wurde zweimal angegeben'?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!