Находим страницы с большим спросом и низким CTR
Это один из самых практичных SEO-сценариев: много показов, но мало кликов.
SELECT p.url,
SUM(g.impressions) AS impressions,
SUM(g.clicks) AS clicks,
ROUND(SUM(g.clicks) * 1.0 / SUM(g.impressions), 4) AS ctr
FROM pages AS p
JOIN gsc_daily AS g ON g.page_id = p.page_id
GROUP BY p.page_id, p.url
HAVING SUM(g.impressions) >= 500
AND ROUND(SUM(g.clicks) * 1.0 / SUM(g.impressions), 4) < 0.02
ORDER BY impressions DESC;
SELECT p.url, — Начинает запрос и перечисляет колонки или выражения, которые нужно вывести.SUM(g.impressions) AS impressions, — Считает сумму числовых значений, например показов или кликов.SUM(g.clicks) AS clicks, — Считает сумму числовых значений, например показов или кликов.ROUND(SUM(g.clicks) * 1.0 / SUM(g.impressions), 4) AS ctr — Считает сумму числовых значений, например показов или кликов.FROM pages AS p — Указывает основную таблицу или источник данных для запроса.JOIN gsc_daily AS g ON g.page_id = p.page_id — Соединяет текущие данные с другой таблицей по условию ON.GROUP BY p.page_id, p.url — Группирует строки, чтобы можно было считать суммы, средние и количества.HAVING SUM(g.impressions) >= 500 — Фильтрует уже сгруппированные результаты, например по сумме показов.AND ROUND(SUM(g.clicks) * 1.0 / SUM(g.impressions), 4) < 0.02 — Добавляет еще одно обязательное условие к фильтру.ORDER BY impressions DESC; — Сортирует результат, чтобы важные строки оказались выше или ниже.Вы увидите страницы, где стоит проверить title, description и сниппет.
Проверьте, что вы работаете в файле seo_lab_from_zero.db, скопировали блок полностью и не потеряли точку с запятой в конце SQL-команды.