Mysql
 sql >> Datenbank >  >> RDS >> Mysql

MySQL-Syntax-Fehlermeldung Operand sollte 1 Spalte(n) enthalten

Versuchen Sie, die Klammer aus der SELECT-Klausel zu entfernen. Von Microsoft TechNet , lautet die korrekte Syntax für eine INSERT-Anweisung mit einer SELECT-Klausel wie folgt.

INSERT INTO MyTable  (PriKey, Description)
       SELECT ForeignKey, Description
       FROM SomeView

Der Fehler, den Sie erhalten:"Das SELECT würde mehr als MAX_JOIN_SIZE Zeilen untersuchen; überprüfen Sie Ihr WHERE und verwenden Sie SET SQL_BIG_SELECTS=1 oder SET SQL_MAX_JOIN_SIZE=#, wenn das SELECT in Ordnung ist." ist eigentlich korrekt, vorausgesetzt, Sie haben viele Zeilen in beiden BOOK und temp_cheques. Sie versuchen, alle Zeilen aus beiden Tabellen abzufragen und einen Querverweis zu erstellen, was zu einer m*n-Abfrage führt. SQL Server versucht, Sie davor zu warnen, bevor eine möglicherweise lange Operation ausgeführt wird.

Legen Sie SQL_BIG_SELECTS fest =1, bevor Sie diese Anweisung ausführen, und versuchen Sie es erneut. Es sollte funktionieren, aber beachten Sie, dass dieser Vorgang lange dauern kann.