misterunknown: GROUP BY mehrere Spalten

Beitrag lesen

Moin,

Unten stehende Abfrage mit "Group By A.unitynumber" liefert mir bei MySQL das gewünschte Ergebnis.(Zwei Datensätze)
Bei SQLite liefert die gleiche Abfrage in der gleichen Tabelle nur einen Datensatz.

Das liegt an der verschiedenen Interpretation der DBMS. Eigentlich dürfte dieses Statement gar nicht ausgeführt werden. Ich weiß beispielsweise, dass Oracle und MSSQL rummeckern, wenn man gruppiert, und eine Spalte weder in der Gruppierung ist, noch innerhalb von einer Aggregat-Funktion.

Gibt es hierfür überhaupt eine Lösung, wenn man wie im Beispiel mehrere Spalten braucht aber nur nach der unitynumber gruppieren möchte?

Welche Felder genau brauchst du, und welche nicht? Das ist die Frage. Ich kann aus deinem Statement nicht richtig erkennen, welchen Anwendungsfall du hast, aber als Faustregel kannst du dir merken: Wenn etwas gruppiert wird, muss jedes selektierte Feld entweder mit gruppiert werden, oder in einer Aggregat-Funktion stehen.

Wenn du uns verrätst, was für Daten dahinter stehen, kann dir auch noch weiter geholfen werden.

Grüße Marco

--
Ich spreche Spaghetticode - fließend.