Abfrage für MySQL-Update-Inner-Join-Tabellen
Beim Versuch, mehrere Tabellen mithilfe eines Inner-Joins in MySQL zu aktualisieren, können bei Benutzern Kompilierungsfehler auftreten. Konkret führt die folgende Abfrage zu einem Kompilierungsfehler in MySQL 5.0:
UPDATE b SET b.mapx = g.latitude, b.mapy = g.longitude FROM business AS b INNER JOIN business_geocode g ON b.business_id = g.business_id WHERE (b.mapx = '' OR b.mapx = 0) AND g.latitude > 0
Um dieses Problem zu beheben, ordnen Sie die Abfrage wie folgt neu:
UPDATE business AS b INNER JOIN business_geocode AS g ON b.business_id = g.business_id SET b.mapx = g.latitude, b.mapy = g.longitude WHERE (b.mapx = '' or b.mapx = 0) and g.latitude > 0
Beachten Sie, dass die obige Abfrage syntaktisch ist richtig. Beim Testen der Abfrage anhand vorhandener Tabellen in MySQL 5.5.8 waren jedoch keine Zeilen betroffen. Dies könnte ein anderes Problem sein, das je nach den spezifischen Daten und der Tabellenstruktur eine weitere Untersuchung erfordert.
Das obige ist der detaillierte Inhalt vonWie aktualisiere ich mehrere MySQL-Tabellen mithilfe eines INNER JOIN korrekt?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!