La función LIST()

4 comentarios

Esta función agregada devuelve una cadena de caracteres consistiendo de todos los valores que no sean NULL en ese grupo. Esos valores pueden estar separados por una coma (por defecto) o por cualquier otro carácter que el programador especifique. Si todos los valores del grupo son NULL o el grupo está vacío, la función LIST() devuelve NULL.

SELECT
   PRD_PROCED,
   LIST(PRD_NOMBRE)
FROM
   PRODUCTOS
GROUP BY
   PRD_PROCED

Este SELECT nos mostrará todos los productos provenientes de cada uno de los países de procedencia. La columna LIST(PRD_NOMBRE) puede ser muy larga ya que en ella se encontrarán todos los productos que provienen de un país.

Como todas las funciones agregadas, LIST() se usa casi siempre con la cláusula GROUP BY.

.

La función MIN()

1 comentario

Esta función agregada nos mostrará:

  • Si la columna es numérica, el menor número de todos
  • Si la columna es carácter, la palabra que en orden alfabético esté primera
  • Si la columna es fecha, la que tiene la fecha más antigua

No tiene en cuenta a los NULL, simplemente los ignora y halla el valor mínimo de las demás columnas.

SELECT
   CLI_CODIGO,
   MIN(CLI_MONTOX) AS MENOR_MONTO_COBRADO
FROM
   COBRANZAS
GROUP BY
   CLI_CODIGO

El SELECT anterior nos mostrará, para cada uno de nuestros clientes, el menor monto de todos los que le hemos cobrado hasta ahora. El alias “MENOR_MONTO_COBRADO” es opcional, no es necesario escribir un alias pero sí es conveniente para que sea más entendible.

Como todas las funciones agregadas, MIN() se usa casi siempre con la cláusula GROUP BY.

La función MAX()

2 comentarios

Esta función agregada nos mostrará:

  • Si la columna es numérica, el número mayor de todos
  • Si la columna es carácter, la palabra que en orden alfabético esté última
  • Si la columna es fecha, la que tiene la fecha más reciente

No tiene en cuenta a los NULL, simplemente los ignora y halla el valor máximo de las demás columnas.

SELECT
   CLI_CODIGO,
   MAX(CLI_MONTOX) AS MAYOR_MONTO_COBRADO
FROM
   COBRANZAS
GROUP BY
   CLI_CODIGO

El SELECT anterior nos mostrará, para cada uno de nuestros clientes, el mayor monto de todos los que le hemos cobrado hasta ahora. El alias “MAYOR_MONTO_COBRADO” es opcional, no es necesario escribir un alias pero sí es conveniente para que sea más entendible.

Como todas las funciones agregadas, MAX() se usa casi siempre con la cláusula GROUP BY.

La función SUM()

7 comentarios

Esta función agregada nos mostrará la suma de una columna numérica. No tiene en cuenta a los NULL, simplemente los ignora y halla la suma de todos los demás números.

SELECT
   CLI_CODIGO,
   SUM(CLI_MONTOX) AS TOTAL_COBRADO
FROM
   COBRANZAS
GROUP BY
   CLI_CODIGO

El SELECT anterior nos mostrará, para cada uno de nuestros clientes, la suma de todo lo que le hemos cobrado hasta ahora. El alias “TOTAL_COBRADO” es opcional, no es necesario escribir un alias pero sí es conveniente para que sea más entendible.

Como todas las funciones agregadas, SUM() se usa casi siempre con la cláusula GROUP BY.

¿Por qué “casi siempre”?

Porque la cláusula GROUP BY se debe escribir si en la lista de columnas del SELECT hay alguna columna que no es una función agregada. Si en la lista del SELECT solamente hay funciones agregadas entonces no se debe escribir la cláusula GROUP BY.