Si usa una función de grupo en un comando sin la cláusula
        GROUP BY , es equivalente a agrupar todos los
        registros.
      
            AVG([DISTINCT]
            
          expr)
            Retorna el valor medio de
            exprDISTINCT puede usarse desde MySQL
            5.0.3 para retornar la media de los valores distintos de
            expr.
          
mysql> SELECT student_name, AVG(test_score)
    ->        FROM student
    ->        GROUP BY student_name;
            BIT_AND(
          expr)
            Retorna el AND bit a bit de todos los
            bits en expr. Los cálculos se
            realizan con precisión de 64 bits
            (BIGINT) .
          
            En MySQL 5.0, esta función retoran
            18446744073709551615 si no hubieran
            registros coindicentes. (Este es el valor de un
            BIGINT sin signo con todos los bits a 1.)
          
            BIT_OR(
          expr)
            Retorna la OR bit a bit de todos los bits
            en expr. El cálculo se realiza
            con precisión de 64 bits (BIGINT) .
          
            Esta función retorna 0 si no hay
            registros coincidentes.
          
            BIT_XOR(
          expr)
            Retorna el XOR bit a bit de todos los
            bits en expr. Los cálculos se
            realizan con precisión de 64 bits
            (BIGINT) .
          
            Esta función retorna 0 si no hay
            registros coincidentes.
          
            COUNT(
          expr)
            Retorna el contador del número de valores no
            NULL en los registros recibidos por un
            comando SELECT.
          
mysql> SELECT student.student_name,COUNT(*)
    ->        FROM student,course
    ->        WHERE student.student_id=course.student_id
    ->        GROUP BY student_name;
            COUNT(*) es algo diferente en que retorna
            un contador del número de registros retornados, si
            contienen o no valores NULL .
          
            COUNT(*) está optimizado para retornar
            muy rápidamente si SELECTretorna de una
            tabla, no se retornan otras columnas, y no hay cláusula
            WHERE . Por ejemplo:
          
mysql> SELECT COUNT(*) FROM student;
            Esta optimización se aplica sólo a tablas
            MyISAM, ya que un conteo exacto de
            registros se almacena para estos tipos de tablas y puede ser
            accedido muy rápidamente. Para motores de almacenamiento
            transaccionales (InnoDB,
            BDB), almacenar un contador de registros
            es más problemático ya que pueden ocurrir múltiples
            transacciones, cada una de las cuales puede afectar al
            contador.
          
            COUNT(DISTINCT
            
          expr,[expr...])
            Retorna un contador del número de valores no
            NULL distintos.
          
mysql> SELECT COUNT(DISTINCT results) FROM student;
            En MySQL, puede obtener el número de combinaciones de
            distintas expresiones que no contiene
            NULL dada una lista de expresiones. En
            SQL estándar, tendría que hacer una concatenación de
            todas las expresiones dentro de COUNT(DISTINCT
            ...).
          
            GROUP_CONCAT(
          expr)
            Esta función retorna una cadena resultado con los valores
            no NULL concatenados de un grupo. Retorna
            NULL si no hay valores no
            NULL . La sintaxis completa es la
            siguiente:
          
GROUP_CONCAT([DISTINCT]expr[,expr...] [ORDER BY {unsigned_integer|col_name|expr} [ASC | DESC] [,col_name...]] [SEPARATORstr_val])
mysql> SELECT student_name,
    ->     GROUP_CONCAT(test_score)
    ->     FROM student
    ->     GROUP BY student_name;
Or:
mysql> SELECT student_name,
    ->     GROUP_CONCAT(DISTINCT test_score
    ->               ORDER BY test_score DESC SEPARATOR ' ')
    ->     FROM student
    ->     GROUP BY student_name;
            En MySQL, puede obtener los valores concatenados de
            combinaciones de expresiones. Puede eliminar valores
            duplicados usando DISTINCT. Si quiere
            ordenar valores en el resultado, debe usar la cláusula
            ORDER BY. Para ordenar en orden inverso,
            añada la palabra clave DESC
            (descendente) al nombre de la columna que está ordenando
            con la cláusula ORDER BY . El valor por
            defecto es orden ascendente; puede especificarse
            explícitamente usando la palabra clave
            ASC. SEPARATOR tiene a
            continuación la cadena que debe insertarse entre los
            valores del resultado. Por defecto es una coma
            (','). Puede eliminar el separador
            especificando SEPARATOR ''.
          
            Puede especificar la longitud máxima con la variable de
            sistema group_concat_max_len . La
            sintaxis para ello en tiempo de ejecución es la siguiente,
            donde val es un entero sin signo:
          
SET [SESSION | GLOBAL] group_concat_max_len = val;
Si se especifica una longitud máxima, el resultado se trunca a su longitudo máxima.
            MIN([DISTINCT]
            ,
            expr)MAX([DISTINCT]
            
          expr)
            Retornas los valores máximos y mínimos de
            expr. MIN() y
            MAX() pueden tener un argumento; en tales
            casos retornan el valor de cadena mínimo y máximo.
            Consulte Sección 7.4.5, “Cómo utiliza MySQL los índices”. La palabra clave
            DISTINCT puede usarse en MySQL 5.0 para
            encontrar el mínimo o máximo de los distintos valores de
            expr; esto es soportado, pero
            produce el mismo resultado que omitiendo
            DISTINCT.
          
mysql> SELECT student_name, MIN(test_score), MAX(test_score)
    ->        FROM student
    ->        GROUP BY student_name;
            Para MIN(), MAX(), y
            otras funciones agregadas, MySQL compara columnas
            ENUM y SET por su
            valor de cadena de caracteres en lugar que por la posición
            relativa de la cadena en el conjunto. Esto difiere de cómo
            los compara ORDER BY. Esto se
            rectificará en una futura versión de MySQL .
          
            STD(,
            expr)STDDEV(
          expr)
            Retorna la desviación estándar de
            expr. Esta es una extensión del
            estándar SQL. La forma STDDEV() de esta
            función se proporciona para compatibilidad con Oracle.
            Desde MySQL 5.0.3, la función estándar SQL
            STDDEV_POP() puede usarse en su lugar.
          
            STDDEV_POP(
          expr)
            Retorna la desviación estándar de
            expr (la raíz cuadrada de
            VAR_POP()). Esta función se añadió en
            MySQL 5.0.3. Antes de 5.0.3, puede usar
            STD() o STDDEV(), que
            son equivalentes pero no SQL estándar.
          
            STDDEV_SAMP(
          expr)
            Retorna la muestra de la desviación estándar de
            expr (la raíz cuadrada de
            VAR_SAMP(). Esta función se añadió en
            MySQL 5.0.3.
          
            SUM([DISTINCT]
            
          expr)
            Retorna la suma de expr. Si el
            conjunto resultado no tiene registros,
            SUM() retorna NULL. La
            palabra clave DISTINCT puede usarse en
            MySQL 5.0 para sumar sólo los valores distintos de
            expr.
          
            VAR_POP(
          expr)
            Retorna la varianza estándar de
            expr. Considera los registros
            como la población completa, no como una muestra, así que
            tiene el número de registros como denominador. Esta
            función se añadió en MySQL 5.0.3. Antes de 5.0.3, puede
            usar VARIANCE(), que es equivalente pero
            no SQL estándar.
          
            VAR_SAMP(
          expr)
            Retorna la varianza de muestra de
            expr. Esto es, el denominador es
            el número de registros menos uno. Esta función se añadió
            en MySQL 5.0.3.
          
            VARIANCE(
          expr)
            Retorna la varianza estándar de
            expr. Esto es una extensión de
            SQL estándar. Desde MySQL 5.0.3, la función SQL estándar
            VAR_POP() puede usarse en su lugar.
          
É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.

