Advent of SQL. Days 11-14 🏂 Сначала вспомнили про скользящее среднее, его нужно было найти за 7 предыдущих дней. Для этого есть конструкция rows between:

avg(score) over ( partition by child_id order by behavior_date rows between 6 preceding and current row ) as avg_rolling_7_days

Я про нее писала в начале года, но к этому моменту все равно забыла, что можно циферками задавать промежуток)

Дальше задачка на полнотекстовый поиск, такого я не ожидала😁 По итогу познакомилась с несколькими функциями и операторами:

to_tsvector to_tsquery ts_rank setweight @@

Потом пошли парсить xml и считать количество зарегавшихся пассажиров. Автор использовал cross join lateral, ну а я нашла другой способ, он мне нравится больше:

cardinality(xpath('/manifest/passengers/passenger', manifest_xml)) as passengers_count

В предпоследний день искали пути от одной точки до другой и задействовали recursive cte

Ну вот и почти все! Сегодня будет последнее задание 🥲

🏴󠁧󠁢󠁥󠁮󠁧󠁿 Фразы дня

barrel straight down the hill - нестись вниз по склону circuitous path - окольный, окружной путь mind-bending - сложный schlep - волочиться winding route - извилистый маршрут

📍 Advent of SQL (с впн) 📍 SQL Advent Calendar (с впн) 📍 Мои решения

@data_engineerette


В этом посте были ссылки, но мы их удалили по правилам Сетки