Шаг 193. Считаем показатели по интенту: navigation

sqlГлава 11. Тренажер SEO-операций без абстракций

Что делаем

Считаем показатели по интенту: navigation

Зачем SEO-специалисту

Интент navigation нельзя сравнивать напрямую с другими интентами без отдельного среза.

Код. Вставьте 1 в 1

SELECT p.search_intent,
       COUNT(*) AS pages_count,
       COALESCE(SUM(s.impressions), 0) AS impressions,
       COALESCE(SUM(s.clicks), 0) AS clicks
FROM pages AS p
LEFT JOIN page_gsc_summary AS s ON s.page_id = p.page_id
WHERE p.search_intent = 'navigation'
GROUP BY p.search_intent;

Построчный разбор: что делает, для чего и как работает

Строка 1: SELECT p.search_intent, — Начинает запрос и перечисляет колонки или выражения, которые нужно вывести.
Строка 2: COUNT(*) AS pages_count, — Считает количество строк или уникальных значений.
Строка 3: COALESCE(SUM(s.impressions), 0) AS impressions, — Считает сумму числовых значений, например показов или кликов.
Строка 4: COALESCE(SUM(s.clicks), 0) AS clicks — Считает сумму числовых значений, например показов или кликов.
Строка 5: FROM pages AS p — Указывает основную таблицу или источник данных для запроса.
Строка 6: LEFT JOIN page_gsc_summary AS s ON s.page_id = p.page_id — Соединяет текущие данные с другой таблицей по условию ON.
Строка 7: WHERE p.search_intent = 'navigation' — Начинает фильтр: дальше перечисляются условия, какие строки оставить.
Строка 8: GROUP BY p.search_intent; — Группирует строки, чтобы можно было считать суммы, средние и количества.

Что должно получиться

Вы увидите количество страниц и суммарные метрики для интента navigation.

Если появилась ошибка

Проверьте, что вы работаете в файле seo_lab_from_zero.db, скопировали блок полностью и не потеряли точку с запятой в конце SQL-команды.