uz
Feedback
SQL Ready | Базы Данных

SQL Ready | Базы Данных

Kanalga Telegram’da o‘tish

Авторский канал про Базы Данных и SQL Ресурсы, гайды, задачи, шпаргалки. Информация ежедневно пополняется! Автор: @energy_it РКН: https://clck.ru/3QREBc Реклама на бирже: https://telega.in/c/sql_ready

Ko'proq ko'rsatish

📈 Telegram kanali SQL Ready | Базы Данных analitikasi

SQL Ready | Базы Данных (@sql_ready) Rus til segmentidagi kanali faol ishtirokchi. Hozirda hamjamiyat 15 560 obunachidan iborat bo'lib, Texnologiyalar & Aralashmalar toifasida 8 395-o'rinni va Rossiya mintaqasida 43 172-o'rinni egallagan.

📊 Auditoriya ko‘rsatkichlari va dinamika

невідомо sanasidan buyon loyiha tez o‘sib, 15 560 obunachiga ega bo‘ldi.

10 Iyun, 2026 dagi oxirgi ma’lumotlarga ko‘ra kanal barqaror faollikka ega. Oxirgi 30 kunda obunachilar soni 57 ga, so‘nggi 24 soatda esa -8 ga o‘zgardi va umumiy qamrov yuqori darajada qolmoqda.

  • Tasdiqlash holati: Tasdiqlanmagan
  • Jalb etish (ER): Auditoriya o‘rtacha 11.95% darajada jalb etiladi. Nashrdan keyingi dastlabki 24 soatda kontent odatda umumiy obunachilar sonining 6.07% ini tashkil etuvchi reaksiyalarni to‘playdi.
  • Post qamrovi: Har bir post o‘rtacha 1 860 marta ko‘riladi; birinchi sutkada odatda 945 ta ko‘rish yig‘iladi.
  • Reaksiyalar va o‘zaro ta’sir: Auditoriya faol: har bir postga o‘rtacha 25 ta reaksiya keladi.
  • Tematik yo‘nalishlar: Kontent sql, строка, user_id, created_at, desc kabi asosiy mavzularga jamlangan.

📝 Tavsif va kontent siyosati

Muallif resursni shaxsiy fikrni ifoda etish maydoni sifatida ta’riflaydi:
Авторский канал про Базы Данных и SQL Ресурсы, гайды, задачи, шпаргалки. Информация ежедневно пополняется! Автор: @energy_it РКН: https://clck.ru/3QREBc Реклама на бирже: https://telega.in/c/sql_ready

Yuqori yangilanish chastotasi (oxirgi ma’lumot 11 Iyun, 2026 da olingan) sababli kanal doimo dolzarb va katta qamrovli bo‘lib qoladi. Analitika auditoriya kontent bilan faol hamkorlik qilishini, uni Texnologiyalar & Aralashmalar toifasidagi muhim ta’sir nuqtasiga aylantirishini ko‘rsatadi.

15 560
Obunachilar
-824 soatlar
+357 kunlar
+5730 kunlar
Postlar arxiv
📂 Напоминалка по тому, как работает PostgreSQL! Например, каждое подключение создаёт отдельный процесс, а любые изменения сн
📂 Напоминалка по тому, как работает PostgreSQL! Например, каждое подключение создаёт отдельный процесс, а любые изменения сначала попадают в WAL, и только потом гарантированно пишутся в данные. На картинке — базовая архитектура: подключения и backend-процессы, shared memory, background и auxiliary процессы и физическое хранение. Сохрани, чтобы не потерять! ➡️ SQL Ready | #ресурс

Диапазоны как тип данных: убираем двойные условия и баги! Когда работаешь с интервалами, обычно пишут два условия, и почти вс
Диапазоны как тип данных: убираем двойные условия и баги! Когда работаешь с интервалами, обычно пишут два условия, и почти всегда где-то ошибаются с границами:
WHERE created_at <= now()
AND shipped_at > now()
Такой код легко сломать и плохо масштабируется:
tstzrange(created_at, shipped_at)
PostgreSQL имеет встроенные range-типы, которые позволяют хранить и сравнивать интервалы как единое значение. tstzrange — для timestamptz, tsrange — для timestamp:
@> now()
Оператор @> проверяет содержит ли диапазон значение, заменяя сразу два условия. По умолчанию границы [ ) — аналог created_at <= x AND shipped_at > x:
CREATE INDEX ON orders USING GIST (tstzrange(created_at, shipped_at));
С GiST-индексом такие запросы работают эффективно даже на больших объёмах. 🔥range-типы — это способ убрать класс ошибок с датами и упростить сложную логику. ➡️ SQL Ready | #совет

Отклики, после которых зовут на собеседования Главный фокус команды ии-ассистента Софи: 1. Ребята переписали парсер - теперь
Отклики, после которых зовут на собеседования Главный фокус команды ии-ассистента Софи: 1. Ребята переписали парсер - теперь собирают вакансии из 110+ источников: Telegram, Хабр, LinkedIn и другие. 2. Параллельно сделали умный мэтчер - Софи теперь показывает не всё подряд, а то, что подходит именно вам (локация, стек, грейд + обучение на фидбэке юзеров). На этом строится основа автооткликов - быстрых, точных и стабильных. Следующий шаг - откалибровать мэтчер до точности 80%+, но это невозможно без реальных пользователей. Поэтому в ближайшие дни они открывают доступ к бесплатному тестированию. Мест будет немного, так как фокус на качестве. ➡️Если хочешь попасть - подписывайся на канал, там будет анонс о наборе.

😍 SQL PostgreSQL Course — информативный курс по SQL с практикой! Это структурированное обучение по PostgreSQL: от базовых запросов до JOIN’ов, подзапросов и проектирования базы данных. Материал выстроен последовательно, поэтому легко идти шаг за шагом и не теряться в теме. Здесь есть практика с заданиями и ответами, за счёт чего обучение закрепляется.
Оставляю ссылочку: GitHub 📱
➡️ SQL Ready | #репозиторий

😎 SQL Server Kit — практическая база инструментов и материалов! Репозиторий представляет собой обширную коллекцию скриптов, статей, рекомендаций и утилит для администрирования и разработки на SQL. Внутри собраны решения для диагностики производительности, оптимизации запросов, мониторинга, резервного копирования, работы с индексами и анализа состояния базы данных. Также представлены ссылки на проверенные источники и лучшие практики работы с СУБД.
Оставляю ссылочку: GitHub 📱
➡️ SQL Ready | #репозиторий

Дубликаты после JOIN — откуда берутся и как контролировать! Одна из частых проблем — внезапное размножение строк после JOIN. Это базовое поведение, если не учтена кардинальность связей. Таблицы:
orders(id, customer_id, amount)
payments(id, order_id, status)
Задача: получить заказы с информацией об оплате.
SELECT 
    o.id,
    o.amount,
    p.status
FROM orders o
LEFT JOIN payments p  
    ON p.order_id = o.id;
Если у одного заказа несколько платежей — в результат попадёт несколько строк. Фактически вы получаете по одной строке на каждое совпадение orderspayments. То есть один заказ повторится столько раз, сколько у него записей в payments. Для связи 1:N это абсолютно ожидаемо. Где начинаются проблемы — агрегация:
SELECT 
    COUNT(*) AS total_orders
FROM orders o
LEFT JOIN payments p  
    ON p.order_id = o.id;
Здесь COUNT(*) считает строки уже после JOIN, а не заказы. Если у заказа 3 платежа — он попадёт в счёт 3 раза. Это одна из самых частых причин кривых метрик. Корректный вариант:
SELECT 
    COUNT(DISTINCT o.id) AS total_orders
FROM orders o
LEFT JOIN payments p  
    ON p.order_id = o.id;
Так считаются уникальные заказы, независимо от числа платежей. Но важно помнить, что DISTINCT — это дополнительная операция, и на больших объёмах она может стоить дорого. И отдельный момент, если вам нужно просто количество заказов без условий по payments, JOIN здесь вообще лишний. Лучше контролировать кардинальность до JOIN Если задача — проверить наличие успешной оплаты, проще и дешевле использовать EXISTS:
SELECT 
    o.id,
    o.amount
FROM orders o
WHERE EXISTS (
    SELECT 1
    FROM payments p
    WHERE p.order_id = o.id
      AND p.status = 'success'
);
EXISTS работает как semi-join: он проверяет факт наличия строки, но не тянет её в результат. За счёт этого одна строка заказа остаётся одной строкой. Если JOIN всё-таки нужен — агрегируем заранее:
SELECT 
    o.id,
    o.amount,
    COALESCE(p.has_success, 0) AS has_success
FROM orders o
LEFT JOIN (
    SELECT
        order_id,
        MAX(CASE WHEN status = 'success' THEN 1 ELSE 0 END) AS has_success
    FROM payments
    GROUP BY order_id
) p ON p.order_id = o.id;
Здесь мы сначала приводим payments к одной строке на order_id, и только потом делаем JOIN. После этого результат становится понятным: одна строка на заказ, без раздувания. Типичная ошибка:
GROUP BY o.id, o.amount, p.status
Это не решит проблему. Такой GROUP BY просто фиксирует текущую детализацию. Если у заказа было несколько статусов — строки никуда не денутся. 🔥 JOIN не создаёт дубликаты сам по себе. Он возвращает строки в соответствии с числом совпадений по условию ON. Если после JOIN строк стало больше — значит реальная связь между таблицами не 1:1, а 1:N или даже N:M. ➡️ SQL Ready | #практика

Совет на всю жизнь — начните изучать вайбкодинг. Нейронки уже собирают проекты от идеи до релиза, пишут код, находят и исправ
Совет на всю жизнь — начните изучать вайбкодинг. Нейронки уже собирают проекты от идеи до релиза, пишут код, находят и исправляют баги лучше команды айтишников. Это сэкономит вам десятки часов работы. А чтобы научиться вайбкодить и не совершать ошибки - читайте канал AI-архитектор, где есть: ➖Инструкции по Antigravity и n8n. ➖Связки, которые приносят от 100 000 ₽ за проект ➖Реальный опыт программиста и вайбкодера, который настраивает автоматизацию ИИ для гос. компаний. Подписывайтесь и смотрите в закрепе, как за 2 дня собрать ИИ-автоматизацию без единой строчки кода: https://t.me/+eBc7ivvcY34xZTli

☕️ Полезную статью нашёл на Хабре: «Ваш RAG не умеет думать. А мой умеет»! В этой статье: • Разбирается, почему классические
☕️ Полезную статью нашёл на Хабре: «Ваш RAG не умеет думать. А мой умеет»! В этой статье: • Разбирается, почему классические RAG-системы на базе векторных БД часто ограничиваются поверхностным поиском; • Показан подход HippoRAG 2, где память и связи между фактами организованы ближе к графовой модели; • Объясняется, как эволюционирует работа с данными; • Рассматривается, как это влияет на SQL/NoSQL слой, архитектуру хранения и построение более осмысленных запросов к данным.
🔊 Продолжайте читать на Habr!
➡️ SQL Ready | #статья

Использование data-modifying CTE для цепочек операций в одном запросе! Обычно изменения и чтение делают разными запросами, чт
Использование data-modifying CTE для цепочек операций в одном запросе! Обычно изменения и чтение делают разными запросами, что создаёт лишние round-trip и риск рассинхронизации данных между операциями:
UPDATE orders
SET status = 'processing'
WHERE id = 123
RETURNING *;
RETURNING уже даёт доступ к изменённым строкам, но data-modifying CTE позволяет пойти дальше и использовать их в следующих шагах:
WITH updated AS (...)
CTE фиксирует результат изменения и гарантирует, что последующие операции работают с тем же набором строк в рамках одного statement:
INSERT INTO audit_log (order_id, new_status)
SELECT id, status
FROM updated;
Теперь можно атомарно обновить данные и сразу записать аудит, отправить в очередь или выполнить дополнительную логику без повторных SELECT. 🔥 data-modifying CTE — это способ строить сложные, но безопасные цепочки операций внутри одного SQL-запроса. ➡️ SQL Ready | #совет

ПАРУ СЛОВ О ChaGPT 5.5 (Spud) Последние дни активно тестирую новую модель. Если коротко: — Плюсы: кодинг, миллион токенов кон
ПАРУ СЛОВ О ChaGPT 5.5 (Spud) Последние дни активно тестирую новую модель. Если коротко:
— Плюсы: кодинг, миллион токенов контекста и агентский режим — Минусы: логические ошибки, нужно присматривать в сложных задачах
Больше всего зацепила именно работа агента. Решил проверить его на своей «боли» — навел порядок в подписках Telegram. В последнее время лента превратилась в бесконечный шум с постами об одном и том же. Дал задачу нейронке: просмотреть мои подписки, убрать лишнее и оставить только тех, кто пишет про реальный опыт, автоматизацию и внедрение ИИ в работу. Модель сама просканировала каналы и собрала отличную подборку. Результат получился реально адекватным, поэтому делюсь этой подборкой. Авторы, которые каждый день пишут полезные об IT и AI доступно и интересно. Подписывайтесь на лучших Tech-специалистов https://t.me/addlist/81ejyxxH4rM0ZDIy

Проверяем дубликаты и считаем уникальные значения! В больших таблицах важно быстро находить повторяющиеся записи и понимать, сколько уникальных элементов. Это полезно для контроля качества данных и аналитики. Создадим таблицу пользователей:
CREATE TABLE users (
    user_id INT,
    email VARCHAR(100)
);

INSERT INTO users VALUES
(1, 'alice@mail.com'),
(2, 'bob@mail.com'),
(3, 'alice@mail.com'),
(4, 'carol@mail.com'),
(5, 'bob@mail.com');
Запрос для выявления дубликатов и подсчёта уникальных email:
SELECT email, COUNT(*) AS cnt,
       CASE WHEN COUNT(*)>1 THEN 'Duplicate' ELSE 'Unique' END AS status
FROM users
GROUP BY email;
Функция COUNT() + GROUP BY группирует одинаковые значения, а CASE сразу классифицирует их как дубликаты или уникальные. Результат:
email           | cnt | status
-----------------------------
alice@mail.com  | 2   | Duplicate
bob@mail.com    | 2   | Duplicate
carol@mail.com  | 1   | Unique
🔥 Это простой способ контролировать качество данных, выявлять ошибки и готовить отчёты для команды. ➡️ SQL Ready | #практика

⚡️ Вышло большое обновление популярного курса- AI агенты, которые реально работают в проде! Вы всё ещё пишете обёртки над Cha
⚡️ Вышло большое обновление популярного курса- AI агенты, которые реально работают в проде! Вы всё ещё пишете обёртки над ChatGPT и называете это «AI-продуктом»? Пока вы промптите - рынок переходит на агентные системы. Те, что принимают решения, ходят в API, работают с Postgres и Redis, управляют браузером через Playwright. И 90% таких систем ломаются между ноутбуком и продом. AI Agents Engineering - курс, который закрывает этот разрыв. LangGraph, AutoGen, Computer Use, LLMOps. 8 модулей, 120+ шагов - от архитектуры до деплоя в Docker. На выходе: реальный опыт на большой практической базе, а production-агент и навыки, за которые уже платят. 👉 48 часов действует скидка на курс 55 процентов: https://stepik.org/a/276971/

📂 Напоминалка по реляционной модели и SQL! Например, Primary Key гарантирует уникальность записей, Foreign Key — обеспечивае
📂 Напоминалка по реляционной модели и SQL! Например, Primary Key гарантирует уникальность записей, Foreign Key — обеспечивает ссылочную целостность, а JOIN’ы позволяют собирать распределённые данные в единую выборку. На картинке — основные концепции, которые используются при проектировании и работе с БД. Сохрани, чтобы не потерять! ➡️ SQL Ready | #ресурс

❤️ Нашел вам html5css — простой и наглядный справочник по SQL на русском! Если хочется быстро разобраться в командах — этот сайт отлично подойдёт. Конструкции объяснены на примерах, с чётким и кратким синтаксисом. Удобно использовать как справочник или экспресс‑повторение. 📌 Оставляю ссылочку: html5css.ru ➡️ SQL Ready | #ресурс

🖥 Напоминалка по продвинутым функциям работы с датами! Эта шпаргалка собрала ключевые методы, которые позволяют не просто ср
+4
🖥 Напоминалка по продвинутым функциям работы с датами! Эта шпаргалка собрала ключевые методы, которые позволяют не просто сравнивать даты, а точно извлекать нужные части, округлять по нужному уровню, форматировать для отчётов и рассчитывать интервалы в удобной форме. ➡️ SQL Ready | #шпора

Совет на 2026 год — переходите в ML. Пока обычные разрабы конкурируют с ИИ-копилотами, ML-инженеры эти самые нейронки создают. В эпоху нейростей это самые востребованые люди в мире программирования. Зарплаты мидлов начинаются от 250 000 ₽, а у сеньоров в BigTech доходят до 700 000 ₽. А чтобы освоить его всего за 4 месяца без лишней суеты — изучите канал Артема Алехина. Его бэкграунд: Руководитель команды в Сбере, валютная удаленка. К 22 годам вышел на доход 1 000 000+ ₽ в месяц. На канале вы найдёте: — Всё про самые востребованные стеки(Python, ИИ-агенты, NLP) и почему математика — это не страшно, если учить только нужное. — Как оформить резюме, чтобы оно пролетало через любые LLM-фильтры и ATS-системы прямо к тимлидам. — Скрипты переговоров, которые помогли его ученикам прыгнуть с 0 до 360к всего за 8 месяцев. Во времена острой нехватки ML-разработчиков, это лучшее время, чтобы перекатиться. Переходи и изучай: https://t.me/+qG_ihzUEkHJlOWVi

😎 SQLServerCentral — крупнейшее сообщество и база знаний по Microsoft SQL Server! Здесь публикуются ежедневные статьи, обучающие серии Stairway, подборки скриптов, обзоры книг, а также активные форумы и блоги для администраторов БД и разработчиков. 📌 Оставляю ссылочку: sqlservercentral ➡️ SQL Ready | #ресурс

🖥 Когда система нагружена сильнее всего? В системах с временными интервалами важно понимать не просто отдельные события, а и
+5
🖥 Когда система нагружена сильнее всего? В системах с временными интервалами важно понимать не просто отдельные события, а их наложение — именно оно определяет реальную нагрузку. Сегодня в задаче:
Преобразуем интервалы в точки начала и конца, чтобы работать с ними как с потоком событий; Посчитаем текущую нагрузку через накопительную сумму по времени; Найдём момент максимального количества одновременных событий — пик нагрузки системы.
Этот приём используется в мониторинге, аналитике, планировщиках и системах, где важно контролировать параллельную активность. ➡️ SQL Ready | #задача

🔥База платных курсов и книг по программированию на весь 2026 год!🔥 Канал новый, потому что слишком много людей ждут халявы.
🔥База платных курсов и книг по программированию на весь 2026 год!🔥 Канал новый, потому что слишком много людей ждут халявы. Тут всё, что обычно стоит тысячи: — Авторские курсы, которые не найти в открытом доступе — Самые свежие книги для старта — Всё, что нужно, чтобы за полгода вырасти от мидла до сеньора ➡️ Залетайте, пока есть доступ!

☕️ Годную статью нашёл на Хабре: «Как работает распределённый SQL в YDB: от запроса до выполнения»! В этой статье: • Показано
☕️ Годную статью нашёл на Хабре: «Как работает распределённый SQL в YDB: от запроса до выполнения»! В этой статье: • Показано, как в YDB обрабатывается SQL-запрос — от парсинга до распределённого исполнения по узлам; • Разбирается, как устроены планировщик, оптимизатор и механизмы шардинга при работе с большими данными; • Объясняется, как достигаются консистентность, отказоустойчивость и масштабируемость в распределённой базе.
🔊 Продолжайте читать на Habr!
➡️ SQL Ready | #статья