Считаем среднюю позицию по страницам
Средняя позиция помогает отделить CTR-проблемы от проблем ранжирования.
SELECT p.url,
ROUND(AVG(g.avg_position), 2) AS avg_position,
SUM(g.impressions) AS impressions
FROM pages AS p
JOIN gsc_daily AS g ON g.page_id = p.page_id
GROUP BY p.page_id, p.url
ORDER BY avg_position ASC;
SELECT p.url, — Начинает запрос и перечисляет колонки или выражения, которые нужно вывести.ROUND(AVG(g.avg_position), 2) AS avg_position, — Округляет рассчитанное число, чтобы результат было удобно читать.SUM(g.impressions) AS impressions — Считает сумму числовых значений, например показов или кликов.FROM pages AS p — Указывает основную таблицу или источник данных для запроса.JOIN gsc_daily AS g ON g.page_id = p.page_id — Соединяет текущие данные с другой таблицей по условию ON.GROUP BY p.page_id, p.url — Группирует строки, чтобы можно было считать суммы, средние и количества.ORDER BY avg_position ASC; — Сортирует результат, чтобы важные строки оказались выше или ниже.Вверху будут страницы с лучшими средними позициями.
Проверьте, что вы работаете в файле seo_lab_from_zero.db, скопировали блок полностью и не потеряли точку с запятой в конце SQL-команды.