Was erwartes du?
Die Fehlermeldung bedeutet das die irgendeins deiner Selects oder Sub-selects mehr als eine eine Spalte (Column) zurück liefert und du diese z.B. beim JOIN mit EINEM anderen Wert vergleichst.
Dies kann aber mehrer Ursachen haben. Auch eine Klammer(paar) zu wenig.
Ich erwarte nahezu gar nichts. Das habe ich glaube ich auch gezeigt, indem ich selbst ohne Angabe des problematischen Statements mögliche Fehlerquellen und Strategien genannt habe, jenseits einer Zerlegung einem solchen Fehler auf die Schliche zu kommen. Ich habe sogar noch dazugeschrieben, dass meine Vorschläge zur Vorgehensweise nicht nur für MySQL praktisch sind. Sogar andere Systeme liefern manchmal unverständliche Fehlermeldungen, nicht nur MySQL.
Dass Postgres hier eine Ausnahme bildet und niemals unverständliche Fehlermeldungen liefert, weiß mindestens der Kenner, nicht jedoch jeder Anfänger.

Am Ende ist es doch so, ich helfe immer gern, wenn ich kann. Aber wie zart angedeutet im Falle MySQL mit gesträubten Nackenhaaren.
Nicht sicher, hier jedenfalls genau wie Du!
Ich ziehe dabei in Betracht, dass manche Statements nicht gern veröffentlicht werden wollen.
Und nun zur Feier des Tages noch ein Beispiel. Wer hätte gedacht, dass dieses falsche Statement:
Code:
insert into a (b,c,d)
select (b, c,d) from a where b='b';
in MySQL die Fehlermeldung liefert:
Operand sollte 1 Spalte(n) enthalten
Und last but not least, die Fehlermeldung von Postgres bei identischem Code:
Code:
ERROR: INSERT has more target columns than expressions LINE 1: insert into a (b,c,d)
^ HINT: The insertion source is a row expression containing the same number of columns expected by the INSERT.
Did you accidentally use extra parentheses?
Und weil's so schön ist, noch eine automatische Deutschübersetzung:
Code:
ERROR: INSERT hat mehr Zielspalten als Ausdrücke ZEILE 1: insert into a (b,c,d)
TIPP: Die Einfügequelle ist ein Zeilenausdruck, der die gleiche Anzahl von Spalten enthält, die von INSERT erwartet werden.
Haben Sie versehentlich zusätzliche Klammern verwendet?