Menu
CoddyTech

Повторение - Запросы WITH

Часть раздела Основы путешествия по SQL на Coddy. Урок 50 из 72.

challenge icon

Задание

Легко

Доступные таблицы и столбцы:

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

Качество устройства измеряется по формуле (width/height)*num_features.

Найдите все устройства с завышенной оценкой. Выберите все устройства, у которых opinion больше среднего качества, а score меньше среднего качества. Верните только device_id.

Для решения используйте предложение WITH, чтобы создать подзапрос, вычисляющий среднее качество, и повторно используйте его в основном запросе.

Попробуйте сами

-- Шаг 1: задайте имя временному набору результатов, содержащему одно среднее значение
WITH avg_quality AS (
    SELECT ____ AS avg_q
    FROM devices_specs
)
-- Шаг 2: объедините две таблицы устройств, затем присоедините временный набор результатов
SELECT dsp.device_id
FROM devices_specs dsp
INNER JOIN devices_score dsc ON ____
INNER JOIN avg_quality aq
-- Шаг 3: оставьте устройства, находящиеся по разные стороны от этого среднего значения
WHERE ____

Все уроки раздела Основы

Потренируйтесь самостоятельно: Песочница SQL