1052: Column 'x' in field list is ambiguous (Spalte in der Feldliste mehrdeutig)
MySQLWas bedeutet das?
Eine Spalte mit demselben Namen existiert in mehr als einer Tabelle der Abfrage, und weil sie ohne Tabellen-/Alias-Präfix verwendet wird, kann MySQL nicht erkennen, zu welcher Tabelle sie gehört.
Ursache
Beide verknüpften Tabellen haben eine gleichnamige Spalte (z. B. id in beiden); die Spalte steht unqualifiziert (ohne Präfix) in SELECT, WHERE, ON, GROUP BY oder ORDER BY.
Lösung
Qualifiziere jede mehrdeutige Spalte mit Tabellennamen oder Alias: SELECT a.id, b.id FROM a JOIN b ON a.id = b.a_id; Gib Tabellen kurze Aliase und versieh alle kollidierenden Spalten mit Präfix. Verringere bei Joins über gemeinsame Spalten die Mehrdeutigkeit mit USING(my_column).
Weitere Einträge zu dieser Datenbank
- 1366Incorrect string/integer value for column (falscher String-/Integer-Wert für Spalte)
- 1044Access denied for user to database (Zugriff des Benutzers auf die Datenbank verweigert)
- 1264Out of range value for column (Wert außerhalb des Bereichs für Spalte)
- 1136Column count doesn't match value count (Spaltenanzahl passt nicht zur Werteanzahl)
- 1048Column 'x' cannot be null (Spalte darf nicht NULL sein)
- 1292Incorrect datetime value / truncated incorrect value (falscher Datums-/Zeitwert)
- 1406Data too long for column (Daten zu lang für Spalte)