Dado que esto no se ha mencionado aquí. Las respuestas anteriores son correctas, es decir, el orden de las columnas después de la cláusula "agrupar por" no afectará la exactitud de la consulta (es decir, el monto total).
Sin embargo, el orden de las filas que se recuperan variará según el orden de las columnas especificadas después de la cláusula "agrupar por". Por ejemplo, considere la tabla A
con las siguientes filas:
Col1 Col2 Col3
1 xyz 100
2 abc 200
3 xyz 300
3 xyz 400
SELECT *, SUM(Col3) FROM A GROUP BY Col2, Col1
recuperará filas ordenadas por el Col2
en orden ascendente.
Col1 Col2 Col3 sum(Col3)
2 abc 200 200
1 xyz 100 100
3 xyz 300 700
Ahora cambie el orden de la columna en el grupo por a Col1, Col2
. Las filas recuperadas se ordenan asc por Col1
.
es decir select *, sum(Col3) from A group by Col1, Col2
Col1 Col2 Col3 sum(Col3)
1 xyz 100 100
2 abc 200 200
3 xyz 300 700
Nota: El monto total (es decir, la exactitud de la consulta) permanece exactamente igual.