Saltar al contenido principal
Documentos
FuncionesExpresionesKeywordsDeclaracionesCláusulas

MySQL POR Palabra clave

La palabra clave `BY` en MySQL se utiliza a menudo junto con cláusulas como `GROUP BY` y `ORDER BY`. Ayuda a organizar los resultados de la consulta, ya sea agrupándolos en función de una o varias columnas o clasificándolos en un orden determinado.

Utilización

La palabra clave `BY` se utiliza para definir cómo deben agruparse u ordenarse los datos en los resultados de la consulta. Sigue a `GROUP` u `ORDER` y especifica las columnas para agrupar u ordenar.

Sintaxis para GROUP BY

SELECT column1, aggregate_function(column2)
FROM table_name
GROUP BY column1;

Para agrupar varias columnas:

SELECT column1, column2, aggregate_function(column3)
FROM table_name
GROUP BY column1, column2;

Sintaxis para ORDENAR POR

SELECT column1, column2, ...
FROM table_name
ORDER BY column1 [ASC|DESC];

Para ordenar varias columnas:

SELECT column1, column2, ...
FROM table_name
ORDER BY column1 ASC, column2 DESC;

En estas sintaxis, se utiliza `BY` para determinar las columnas que definen el orden o la agrupación de los resultados.

Ejemplos

1. Básico ORDENAR POR

SELECT first_name, last_name
FROM employees
ORDER BY first_name;

Esta consulta ordena los resultados alfabéticamente por la columna `nombre`. Ten en cuenta que `ASC` es la dirección de ordenación por defecto si no se especifica.

2. ORDENAR POR con orden descendente

SELECT first_name, last_name
FROM employees
ORDER BY last_name DESC;

Aquí, los resultados se ordenan por la columna "apellido" en orden descendente, de Z a A.

3. GROUP BY con función Agregado

SELECT department, COUNT(*)
FROM employees
GROUP BY department;

Este ejemplo agrupa a los empleados por `departamento` y cuenta el número de empleados de cada departamento.

Consejos y buenas prácticas

  • Utiliza `ASC` y `DESC`. Especifica `ASC` para orden ascendente o `DESC` para descendente cuando utilices `ORDENAR POR` para mayor claridad.
  • Agrupa por columnas relevantes. Cuando utilices `GROUP BY`, asegúrate de que las columnas son relevantes para tu análisis para obtener resultados significativos.
  • Combinar con funciones agregadas. Utiliza funciones de agregación como `SUMA`, `CUENTA`, `AVG` con `GRUPO POR` para el análisis de datos agrupados.
  • Utiliza `HAVING` con `GROUP BY`. Considera la posibilidad de utilizar `HAVING` para filtrar los resultados agrupados después de la agregación.
  • Limitar el conjunto de resultados para conjuntos de datos grandes. Cuando utilices "ORDENAR POR" en tablas grandes, considera la posibilidad de utilizar "LIMITAR" para evitar problemas de rendimiento.
  • Garantiza una indexación adecuada. Una indexación adecuada puede mejorar significativamente el rendimiento al utilizar `GROUP BY` y `ORDER BY` en grandes conjuntos de datos.

Perfeccionamiento de SQL para principiantes

Adquiere los conocimientos de SQL para interactuar con tus datos y consultarlos.
Empieza a aprender gratis