Capítulo 8. Conceptos avanzados de consulta

Este trabajo se ha traducido utilizando IA. Agradecemos tus opiniones y comentarios: translation-feedback@oreilly.com

Este capítulo trata en algunas formas avanzadas de manejar datos mediante consultas SQL, más allá de las seis cláusulas principales tratadas en el Capítulo 4, "Conceptos básicos de las consultas", y de las palabras clave comunes tratadas en el Capítulo 7, "Operadores y funciones".

La Tabla 8-1 incluye descripciones y ejemplos de código de los cuatro conceptos tratados en este capítulo.

Tabla 8-1. Conceptos avanzados de consulta
Concepto Descripción Ejemplo de código

Declaraciones de casos

Si se cumple una condición, devuelve un valor determinado. En caso contrario, devuelve otro valor.

SELECT house_id,
  CASE WHEN flg = 1
  THEN 'for sale'
  ELSE 'sold' END
FROM houses;

Agrupar y resumir

Divide los datos en grupos, agrega los datos dentro de cada grupo y devuelve un valor para cada grupo.

SELECT zip, AVG(ft)
FROM houses
GROUP BY zip;

Funciones de ventana

Divide los datos en grupos, agrega u ordena los datos dentro de cada grupo y devuelve un valor por cada fila.

SELECT zip,
  ROW_NUMBER() OVER
  (PARTITION BY zip
  ORDER BY price)
FROM houses;

Pivotar y despivotar

Convierte los valores de una columna en varias columnas o consolida varias columnas en una sola. Compatible con Oracle y SQL Server.

-- Oracle syntax
SELECT *
FROM listing_info
PIVOT
  (COUNT(*) FOR
  room IN ('bd','br'));

Este capítulo describe detalladamente ...

Get Guía SQL de Bolsillo, 4ª Edición now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.