Data Science: SQL и Аналитика данных
№ 6205468675 На простом языке: про работу с данными, современные технологии, AI, машинное обучение и, немного, SQL. Сотрудничество: @niktwix Менеджер: @Spiral_Yuri
Больше📈 Аналитический обзор Telegram-канала Data Science: SQL и Аналитика данных
Канал Data Science: SQL и Аналитика данных (@pizdatascience) языкового сегмента Русский является активным участником. Сейчас сообщество объединяет 35 854 подписчиков, занимая 3 669 место в категории Технологии и приложения и 17 882 место в регионе Россия.
📊 Показатели аудитории и динамика
С момента создания невідомо проект демонстрирует стремительный рост, собрав аудиторию из 35 854 подписчиков.
Согласно последним данным от 30 июля, 2026, канал показывает стабильную активность. За последние 30 дней изменение числа участников составило -1 834, а за последние 24 часа — 24, при этом общий охват остаётся высоким.
- Статус верификации: Не верифицирован
- Уровень вовлечённости (ER): Средний показатель вовлечённости аудитории составляет 16.08%. В первые 24 часа после публикации контент обычно набирает 10.63% реакций от общего числа подписчиков.
- Охват публикаций: В среднем каждый пост получает 5 790 просмотров. В течение первых суток публикация набирает 3 827 просмотров.
- Реакции и взаимодействия: Аудитория активно поддерживает контент: среднее количество реакций на один пост — 0.
- Тематические интересы: Контент сосредоточен на ключевых темах, таких как sql, индекс, sqlite, строка, index.
📝 Описание и контентная политика
Автор описывает ресурс как площадку для выражения субъективного мнения:
“№ 6205468675
На простом языке: про работу с данными, современные технологии, AI, машинное обучение и, немного, SQL.
Сотрудничество: @niktwix
Менеджер: @Spiral_Yuri”
Благодаря высокой частоте обновлений (последние данные получены 31 июля, 2026) канал поддерживает актуальность и высокий уровень охвата публикаций. Аналитика показывает, что аудитория активно взаимодействует с контентом, что делает его важной точкой влияния в категории Технологии и приложения.
SELECT *
FROM orders
WHERE user_id = 42
AND status = 'active';
Обычный индекс:
CREATE INDEX idx_orders_user_status
ON orders(user_id, status);
Работает, но он хранит данные по всем статусам: active, cancelled, archived, failed и так далее.
Если чаще всего нужны только активные заказы, можно сделать partial index:
CREATE INDEX idx_orders_active_user
ON orders(user_id)
WHERE status = 'active';
Такой индекс меньше, быстрее обновляется и лучше помещается в память. Планировщик сможет использовать его для запросов, где условие совпадает:
SELECT *
FROM orders
WHERE user_id = 42
AND status = 'active';
Индекс не обязан покрывать всю таблицу. Иногда лучший индекс - это индекс только по тем строкам, которые реально участвуют в горячих запросах.
Особенно полезно для флагов вроде deleted_at IS NULL, status = 'active', is_published = true, processed = false.
🫡 Всё про Data Science
🇷🇺 Читайте нас в MAXSELECT *
FROM orders o
WHERE o.user_id IN (SELECT id FROM users WHERE active = true);
-- быстрее
SELECT *
FROM orders o
WHERE EXISTS (
SELECT 1
FROM users u
WHERE u.id = o.user_id AND u.active = true
);
EXISTS останавливается на первом совпадении и не тянет весь подзапрос в память. На больших данных разница может быть кратной.
🫡 Всё про Data Science
🇷🇺 Читайте нас в MAX⏺️ связка Opus 4.8 и Composer 2.5 потратила около $1 400; ⏺️ Fable — примерно $20 000.Одинаковая задача, но почти пятнадцатикратная разница в цене. Во время разработки агенты столкнулись с до боли знакомыми командными проблемами: дублировали работу, конфликтовали при изменении одних и тех же файлов и избегали трогать ядро системы, даже когда без этого было невозможно двигаться дальше. Получается, ИИ уже способен за часы собрать сложный системный проект, но митинги, конфликты и страх ответственности он тоже автоматизировал 😂 #ai #rust #sqlite #agents #programming ➡️ https://cursor.com/blog/agent-swarm-model-economics 🫡 Всё про Data Science 🇷🇺 Читайте нас в MAX
SELECT *
FROM users
WHERE id NOT IN (
SELECT user_id
FROM banned_users
);
Но если banned_users.user_id содержит хотя бы один NULL, запрос может вернуть ноль строк.
Надёжнее использовать NOT EXISTS:
SELECT u.*
FROM users AS u
WHERE NOT EXISTS (
SELECT 1
FROM banned_users AS b
WHERE b.user_id = u.id
);
Причина в трёхзначной логике SQL: сравнение с NULL даёт UNKNOWN, а не TRUE или FALSE.
Правило простое: если подзапрос потенциально возвращает NULL, вместо NOT IN почти всегда выбирайте NOT EXISTS.
🫡 Всё про Data Science
🇷🇺 Читайте нас в MAX🔶Какие навыки действительно проверяют на собеседованиях; 🔶Что должно быть в портфолио, чтобы его открывали работодатели; 🔶Почему многие резюме аналитиков сразу отправляются в отказ; 🔶Как искать работу без коммерческого опыта; 🔶Какие преимущества есть у кандидатов после 30, 40 и даже 50 лет; 🔶Какие ошибки чаще всего мешают получить первый оффер.Дополнительно на эфире разберем реальные примеры резюме и портфолио кандидатов, которые смогли пройти отбор. 🎁 ПОЛУЧИТЕ 3 КУРСА (PYTHON, SQL, PANDAS) В ПОДАРОК ЗА РЕГИСТРАЦИЮ НА ЭФИР! Эти курсы - база для того чтобы вкатиться в профессию! Если вы хотите войти в аналитику и перестать тратить время на лишнее обучение — этот урок поможет понять, на чем действительно стоит сосредоточиться. 🛎️Регистрируйтесь, эфир совсем скоро!
SELECT COUNT(*) > 0
FROM orders
WHERE user_id = 42;
База может пройти по всем подходящим строкам, чтобы посчитать количество.
Лучше:
SELECT EXISTS (
SELECT 1
FROM orders
WHERE user_id = 42
);
EXISTS останавливается сразу, как только нашел первую подходящую строку. Для больших таблиц это может быть заметно быстрее, особенно если есть индекс по условию:
CREATE INDEX idx_orders_user_id ON orders(user_id);
Если тебе нужен ответ “есть или нет”, используй EXISTS. COUNT(*) оставь для случаев, когда реально нужно точное количество строк.