Der Hauptinhalt dieses Artikels befasst sich mit der Analyse und den Lösungen des 1055-Fehlers bei Verwendung der Group-By-Anweisung auf MySQL 5.7. Freunde in Not können einen Blick darauf werfen.
1. Wenn Sie die Group-By-Anweisung zum Gruppieren in MySQL-Version 5.7 oder höher verwenden und das ausgewählte Feld nicht genau dem Feld nach Group-By entspricht, aber andere Felder enthält, wird dieser Fehler gemeldet
FEHLER 1055 (42000): Ausdruck Nr. 1 der SELECT-Liste ist nicht in der GROUP BY-Klausel und enthält eine nicht aggregierte Spalte
2 Dies liegt daran, dass die höhere Version von MySQL einen sql_mode hinzufügt
SQL_mode anzeigen
select @@sql_mode;
mysql_mode;
+------------------ --- ------------------ --- ------------------ --- ------------------+
|. @@sql_mode ------- ----------------------------- --------------------- ----------------------------- ------+
|. ONLY_FULL_GROUP_BY,STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_pISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION |
+------ ------- ---------------------------- ---------------------- ---------------------------- ---------------------- ----------+
sql_mode='STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_pISION_BY_ZERO,NO_AUTO _CREATE_USER,NO_ENGINE_SUBSTITUTION'
4. Es ist jetzt normal
Verwandte Tutorials:
MySQL-Video-TutorialDas obige ist der detaillierte Inhalt vonDer Fehler 1055 tritt auf, wenn die Group-by-Anweisung unter MySQL 5.7 verwendet wird. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!