Menu
CoddyTech

Repaso: consultas WITH

Parte de la sección Fundamentos del Journey de SQL de Coddy. Lección 50 de 72.

challenge icon

Desafío

Fácil

Tablas y columnas disponibles:

  • devices_specs: device_id, width, height, num_features, opinion
  • devices_score: device_id, score

La calidad de un dispositivo se mide mediante (width/height)*num_features.

Queremos encontrar todos los dispositivos sobrevalorados. Obtén todos los dispositivos cuya opinion sea mayor que la calidad promedio y cuya score sea menor que la calidad promedio. Devuelve solo el device_id.

Para resolverlo, usa la cláusula WITH para crear una subconsulta que calcule la calidad promedio y reutilízala en la consulta principal.

Pruébalo tú mismo

-- Paso 1: asigna un nombre a un conjunto de resultados temporal que contiene un único valor promedio
WITH avg_quality AS (
    SELECT ____ AS avg_q
    FROM devices_specs
)
-- Paso 2: une las dos tablas de dispositivos y luego incorpora el conjunto de resultados temporal
SELECT dsp.device_id
FROM devices_specs dsp
INNER JOIN devices_score dsc ON ____
INNER JOIN avg_quality aq
-- Paso 3: conserva los dispositivos que se encuentran a lados opuestos de ese promedio
WHERE ____

Todas las lecciones de Fundamentos

Practica por tu cuenta: Playground de SQL