Data Science. SQL hub
По всем вопросам- @workakkk @itchannels_telegram - 🔥лучшие ит-каналы @ai_machinelearning_big_data - Machine learning @pythonl - Python @pythonlbooks- python книги📚 @datascienceiot - ml книги📚 РКН: https://vk.cc/cIi9vo #VRHSZ
Больше📈 Аналитический обзор Telegram-канала Data Science. SQL hub
Канал Data Science. SQL hub (@sqlhub) языкового сегмента Русский является активным участником. Сейчас сообщество объединяет 35 840 подписчиков, занимая 3 816 место в категории Технологии и приложения и 18 116 место в регионе Россия.
📊 Показатели аудитории и динамика
С момента создания невідомо проект демонстрирует стремительный рост, собрав аудиторию из 35 840 подписчиков.
Согласно последним данным от 19 июня, 2026, канал показывает стабильную активность. За последние 30 дней изменение числа участников составило -33, а за последние 24 часа — 10, при этом общий охват остаётся высоким.
- Статус верификации: Не верифицирован
- Уровень вовлечённости (ER): Средний показатель вовлечённости аудитории составляет 6.99%. В первые 24 часа после публикации контент обычно набирает 3.45% реакций от общего числа подписчиков.
- Охват публикаций: В среднем каждый пост получает 2 504 просмотров. В течение первых суток публикация набирает 1 238 просмотров.
- Реакции и взаимодействия: Аудитория активно поддерживает контент: среднее количество реакций на один пост — 11.
- Тематические интересы: Контент сосредоточен на ключевых темах, таких как sql, индекс, postgres, index, sqlite.
📝 Описание и контентная политика
Автор описывает ресурс как площадку для выражения субъективного мнения:
“По всем вопросам- @workakkk
@itchannels_telegram - 🔥лучшие ит-каналы
@ai_machinelearning_big_data - Machine learning
@pythonl - Python
@pythonlbooks- python книги📚
@datascienceiot - ml книги📚
РКН: https://vk.cc/cIi9vo
#VRHSZ”
Благодаря высокой частоте обновлений (последние данные получены 20 июня, 2026) канал поддерживает актуальность и высокий уровень охвата публикаций. Аналитика показывает, что аудитория активно взаимодействует с контентом, что делает его важной точкой влияния в категории Технологии и приложения.
-- sf100_orders_annotated.sql
{{ config(materialized='table') }}
select a.*, b.date is not null is_holiday
from {{ref('sf100_orders')}} a
left join {{ref('all_holidays')}} b
on a.o_orderdate = b.date
-- count_holidays.sql
{{config(materialized='table')}}
select count(*) total_days
, count_if(is_holiday) holiday_count
, holiday_count/total_days ratio
from {{ref('sf100_orders_annotated')}}
Эти два файла выглядят как типичный SQL, но с некоторым отличием. Вместо ссылок на таблицы dbt позволяет ссылаться на другие “модели” с помощью аннотаций {{ref(‘sf100_orders_annotated’)}}. Таким образом, dbt определяет связь и зависимости между всеми трансформациями, через которые проходят данные.
📌 Продолжение
@sqlhubпайплайн (конвейер).
Как и SQL, он легко читается, является явным и декларативным. Но в отличие от SQL, он формирует логический пайплайн преобразований и поддерживает такие абстракции, как переменные и функции. Он может использоваться с любой базой данных, использующей SQL.
from tracks
filter artist == "Bob Marley" # Each line transforms the previous result
aggregate { # `aggregate` reduces each column to a value
plays = sum plays,
longest = max length,
shortest = min length, # Trailing commas are allowed
}
• Github
@sqlhub$ pip install sqlparse
import sqlparse
Файл с примерам кода и документацией по работе в закрепе.
raw = 'select * from foo; select * from bar;'
statements = sqlparse.split(raw)
statements
['select * from foo;', 'select * from bar;']
first = statements[0]
print(sqlparse.format(first, reindent=True, keyword_case='upper'))
SELECT *
FROM foo;
>>> # Parsing a SQL statement:
parsed = sqlparse.parse('select * from foo')[0]
parsed.tokens
[<DML 'select' at 0x7f22c5e15368>, <Whitespace ' ' at 0x7f22c5e153b0>, <Wildcard '*' … ]
@sqlhubWITH employee_ranking AS (
SELECT
employee_id,
last_name,
first_name,
salary,
RANK() OVER (ORDER BY salary DESC) as ranking
FROM employee
)
SELECT
employee_id,
last_name,
first_name,
salary
FROM employee_ranking
WHERE ranking = 2
Условие WHERE ranking = 2 используется для фильтрации строк второй по величине зарплаты. Обратите внимание, что на позиции 2 может находиться более одного сотрудника, если у них одинаковая зарплата.
На данном этапе важно понять поведение функции RANK(), а также других доступных функций, таких как ROW_NUMBER() и DENSE_RANK(). Эта тема подробно рассматривается в статье - "Обзор функций ранжирования в SQL". Я рекомендую прочитать эту статью, если вам придется работать с различными видами ранжирования.
@sqlhubmanager_id. У нас есть менеджер, который отвечает за других менеджеров, которые, в свою очередь, отвечают за других сотрудников, и так далее.
При такой организации мы можем иметь иерархию различных уровней. В каждой строке столбец manager_id относится к строке, находящейся на непосредственном верхнем уровне иерархии. В таких случаях хорошим запросом является получение списка всех сотрудников, подчиняющихся генеральному директору компании (который в данном случае имеет идентификатор employee_id, равный 110). Для этого используем следующий запрос
WITH RECURSIVE subordinate AS (
SELECT
employee_id,
first_name,
last_name,
manager_id
FROM employee
WHERE employee_id = 110 -- id of the top hierarchy employee (CEO)
UNION ALL
SELECT
e.employee_id,
e.first_name,
e.last_name,
e.manager_id
FROM employee e
JOIN subordinate s
ON e.manager_id = s.employee_id
)
SELECT
employee_id,
first_name,
last_name,
manager_id
FROM subordinate ;
В этом запросе мы создали рекурсивный CTE под названием subordinate. Он является ключевой частью запроса, поскольку проходит по иерархии данных, переходя от одной строки к строкам иерархии, расположенным непосредственно под ней.
Есть два подзапроса, соединенных между собой UNION ALL; первый подзапрос возвращает верхнюю строку иерархии, а второй запрос возвращает следующий уровень, добавляя эти строки к промежуточному результату запроса. Затем снова выполняется второй подзапрос, возвращающий следующий уровень, который снова добавляется к промежуточному результату. Этот процесс повторяется до тех пор, пока в промежуточный результат не будет добавлено ни одной новой строки. Наконец, главный запрос возвращает данные в том виде, в котором мы ожидаем.
@sqlhub
Уже доступно! Исследование Telegram 2025 — ключевые инсайты года 
