#1055 – Ausdruck nicht in der GROUP BY-Klausel, nicht kompatibel mit der Serverkonfiguration
In MySQL-Versionen 5.7.12 und höher unter Verwendung von sql_mode= Die Einstellung „only_full_group_by“ stellt sicher, dass Aggregatfunktionen nur auf Spalten ausgeführt werden, die in der GROUP BY-Klausel enthalten sind, oder selbst aggregiert sind Funktionen.
Um den Fehler „Ausdruck der SELECT-Liste ist nicht in der GROUP BY-Klausel und enthält eine nicht aggregierte Spalte, die mit sql_mode=only_full_group_by nicht kompatibel ist“ zu beheben, beachten Sie die folgenden Schritte:
Kompatibilitätsmodus aktivieren:
Fügen Sie die folgende Zeile am Ende der Datei hinzu:
[mysqld] sql_mode=STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION
Neustart MySQL:
Diese geänderte sql_mode-Einstellung ermöglicht Aggregatfunktionen für Spalten verwendet werden, die nicht in der GROUP BY-Klausel enthalten sind, ohne den Fehler auszulösen. Es wird jedoch empfohlen, diesen Modus nur aus Kompatibilitätsgründen zu verwenden und eine Umstrukturierung der Abfrage in Betracht zu ziehen, um nach Möglichkeit den Modus „only_full_group_by“ beizubehalten.
Das obige ist der detaillierte Inhalt vonWie behebt man den MySQL-Fehler 1055: Ausdruck nicht in der GROUP BY-Klausel?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!