MySQL extiende el uso de GROUP BY para que
        pueda usar columnas o cálculos en la lista
        SELECT que no aparecen en la cláusula
        GROUP BY. Esto se aplica a
        cualquier valor posible para este grupo .
        Puede usarlo para obtener mejor rendimiento al evitar ordenar y
        agrupar elementos innecesarios. Por ejemplo, no necesita agrupar
        customer.name en la siguiente consulta:
      
mysql> SELECT order.custid, customer.name, MAX(payments)
    ->        FROM order,customer
    ->        WHERE order.custid = customer.custid
    ->        GROUP BY order.custid;
        En SQL estándar, puede tener que añadir
        customer.name a la cláusula GROUP
        BY . En MySQL, el nombre es redundante si no se
        ejecuta en modo ANSI.
      
        No use esta característica si las columnas
        que omite de la parte GROUP BY no son únicos
        en el grupo! Obtendría resultados impredecibles.
      
        En algunos casos, puede usar MIN() y
        MAX() para obtener valores específicos de
        columna incluso si no son únicos. La siguiente da el valor de
        column del registro conteniendo el valor más
        pequeño en la columna sort :
      
SUBSTR(MIN(CONCAT(RPAD(sort,6,' '),column)),7)
Consulte Sección 3.6.4, “Los registros de un grupo que tienen el máximo valor en alguna columna”.
        Tenga en cuenta que si trata de seguir SQL estándar, no puede
        usar expresiones en clásulas GROUP BY o
        ORDER BY . Puede solucionar esta limitación
        usando un alias para la expresión:
      
mysql> SELECT id,FLOOR(value/100) AS val 
    -> FROM tbl_name
    -> GROUP BY id, val ORDER BY val;
        Sin embargo, MySQL le permite usar expresiones en cláusulas
        GROUP BY y ORDER BY . Por
        ejemplo:
      
mysql> SELECT id, FLOOR(value/100) FROM tbl_name ORDER BY RAND();
Ésta es una traducción del manual de referencia de MySQL, que puede encontrarse en dev.mysql.com. El manual de referencia original de MySQL está escrito en inglés, y esta traducción no necesariamente está tan actualizada como la versión original. Para cualquier sugerencia sobre la traducción y para señalar errores de cualquier tipo, no dude en dirigirse a mysql-es@vespito.com.

