Fehlercode: 1055 inkompatibel mit sql_mode = only_full_group_by

10

Ich habe Probleme mit der Umstellung auf eine Offline-Version der Lahman SQL Baseball-Datenbank. Ich benutzte ein Terminal, das in einen EDX-Kurs eingebettet wurde. Dieser Befehl läuft am Web-Terminal einwandfrei:

%Vor%

Was SQL 5.5.46 ausführt, aber wenn ich meine Offline-Version 5.7.10 benutze, bekomme ich den folgenden Fehlercode:

  

Fehlercode: 1055. Ausdruck # 1 der SELECT-Liste ist nicht in GROUP BY       Klausel und enthält nicht aggregierte Spalte 'stats.m.nameFirst' was ist       funktional nicht abhängig von Spalten in der GROUP BY-Klausel; das ist       inkompatibel mit sql_mode = only_full_group_by

Ich habe eine Menge Lösungen für die Probleme der Menschen gelesen, aber sie haben in diesem Fall nicht geholfen. Das ist noch nie zuvor passiert, also denke ich, dass das entweder sehr offensichtlich ist oder vielleicht bin ich ok beim Codieren. Wie auch immer, weiß jemand, wie man das repariert?

    
Frydaddy07 24.03.2016, 18:03
quelle

2 Antworten

30

In 5.7 ist der sqlmode standardmäßig auf

eingestellt %Vor%

Um die Klausel ONLY_FULL_GROUP_BY zu entfernen, können Sie dies tun:

%Vor%

Dies bedeutet, dass Sie GROUP BY mit nicht aggregierten Spalten erstellen müssen.

Grüße

    
White Feather 24.03.2016, 18:35
quelle
12

Die obige akzeptierte Lösung funktionierte nicht für mich in der Version 5.7.9, for osx10.9 (x86_64) .

Dann hat folgendes funktioniert -

%Vor%     
Anis 18.12.2016 09:53
quelle