ar
Feedback

لا تقع ضحية للمخادعين! تيليمتريو يكتشف ويُميّز هذه القنوات 👉 إذا كنت تريد رؤية العلامة، اشترك

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

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

الذهاب إلى القناة على Telegram

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

إظهار المزيد

📈 نظرة تحليلية على قناة تيليجرام SQL Ready | Базы Данных

تُعد قناة SQL Ready | Базы Данных (@sql_ready) في القطاع اللغوي الروسية لاعباً نشطاً. يضم المجتمع حالياً 17 719 مشتركاً، محتلاً المرتبة 7 336 في فئة التكنولوجيات والتطبيقات والمرتبة 37 136 في منطقة روسيا.

📊 مؤشرات الجمهور والحراك

منذ تأسيسه في невідомо، حقق المشروع نمواً سريعاً وجمع 17 719 مشتركاً.

بحسب آخر البيانات بتاريخ 18 أكتوبر, 2026، تحافظ القناة على نشاط مستقر. خلال آخر 30 يوماً تغيّر عدد الأعضاء بمقدار 696، وفي آخر 24 ساعة بمقدار 5، مع بقاء الوصول العام مرتفعاً.

  • حالة التحقق: غير موثّقة
  • معدل التفاعل (ER): يبلغ متوسط تفاعل الجمهور 12.57‎%. وخلال أول 24 ساعة من النشر يحصد المحتوى عادةً 6.05‎% من ردود الفعل نسبةً إلى إجمالي المشتركين.
  • وصول المنشورات: يحصل كل منشور على متوسط 2 222 مشاهدة. وخلال اليوم الأول يجمع عادةً 1 069 مشاهدة.
  • التفاعلات والاستجابة: يتفاعل الجمهور بانتظام؛ متوسط التفاعلات لكل منشور يبلغ 23.
  • الاهتمامات الموضوعية: يركز المحتوى على مواضيع رئيسية مثل sql, строка, users, индекс, user_id.

📝 الوصف وسياسة المحتوى

يصف المؤلف القناة بأنها مساحة للتعبير عن الآراء الذاتية:
“Авторский канал про Базы Данных и SQL Ресурсы, гайды, задачи, шпаргалки. Информация ежедневно пополняется! Cотрудничество: @energy_c РКН: https://clck.ru/3QREBc”

بفضل وتيرة التحديث المرتفعة (أحدث البيانات بتاريخ 19 أكتوبر, 2026) تحافظ القناة على حداثتها ومستوى وصول مرتفع. وتُظهر التحليلات تفاعلاً نشطاً من الجمهور، ما يجعلها نقطة تأثير مهمة ضمن فئة التكنولوجيات والتطبيقات.

17 719
المشتركون
+524 ساعات
+1807 أيام
+69630 أيام
أرشيف المشاركات
Забудь про ChatGPT. Это как просить калькулятор нарисовать картину. Пока массы гоняют одни и те же скучные запросы в зацензур
Забудь про ChatGPT. Это как просить калькулятор нарисовать картину. Пока массы гоняют одни и те же скучные запросы в зацензуренные боты, реальная революция ИИ в канале «Техноразум»: — Нейросети, которые не боятся запретных тем ( 🔞) — Скрытые функции, которые другие ИИ прячут за платную подписку или цензурой — Настоящие инструкции и промты для взлома творческих шаблонов Переходи к настоящим возможностям, забудь про детский сад нейросетей: https://t.me/+ykoDhAfKfWRiODVi

💡 Rows — умные таблицы с встроенным ИИ! Сервис для работы с данными в формате таблиц (аналог Excel / Google Sheets) с интегрированными AI-инструментами. Позволяет анализировать данные, создавать формулы по описанию и подтягивать информацию из интернета и API. Подходит для аналитики, автоматизации и обработки больших массивов данных. 📌 Оставляю ссылочку: rows.com ➡️ SQL Ready | #ресурс

Агрегирование по группам с оконными функциями! Когда нужно посчитать агрегаты по группе и при этом сохранить исходные строки,
Агрегирование по группам с оконными функциями! Когда нужно посчитать агрегаты по группе и при этом сохранить исходные строки, многие делают подзапрос с GROUP BY и потом джойнят его обратно:
SUM(o.total) OVER (PARTITION BY o.user_id)
Оконная функция считает агрегат по группе, но не схлопывает строки, поэтому не нужен ни GROUP BY, ни повторное соединение:
AVG(o.total) OVER (PARTITION BY o.user_id)
Можно получить любые метрики по той же группе в одном проходе по данным:
COUNT(*) OVER (PARTITION BY o.user_id)
Особенно полезно для аналитики, отчётов, флагов “у пользователя больше N заказов” и подобных задач без лишних подзапросов. 🔥 Один из самых эффективных способов упростить сложные запросы. ➡️ SQL Ready | #совет

🤬Chat GPT отключат в РФ Офицальная причина была озвучена такая "Они нагружают систему, но купить платную версию не могут из-
🤬Chat GPT отключат в РФ Офицальная причина была озвучена такая "Они нагружают систему, но купить платную версию не могут из-за своего местоположения". Другие крупные ИИ-сервисы начинают подхватывать эту политику. Чтоб не стать жертвой изоляции рунета, просто сохрани канал Доктор GPT - мы уже готовим обходку к новой системе безопасности. Не жди бана, подпишись: @gpt

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

Почему OFFSET может ломать производительность пагинации? OFFSET выглядит удобно для страниц, но база всё равно должна проскан
Почему OFFSET может ломать производительность пагинации? OFFSET выглядит удобно для страниц, но база всё равно должна просканировать и пропустить все предыдущие строки. Поэтому чем дальше страница, тем медленнее запрос:
OFFSET 100000
Даже если вы не видите эти строки, СУБД всё равно читает их из индекса или таблицы, поэтому время выполнения растёт вместе с OFFSET:
SELECT *
FROM orders
WHERE id > :last_seen_id
ORDER BY id
LIMIT 10;
Эффективнее использовать keyset-pagination — продолжать выборку от последнего значения ключа, а не пропускать строки:
WHERE id > :last_seen_id
:last_seen_id — это id последней строки предыдущей страницы. Такой запрос использует индекс напрямую (если id индексирован, обычно это PK), поэтому работает одинаково быстро на первой и на миллионной странице. Если сортировка не уникальная (например created_at), добавляйте tie-breaker:
ORDER BY created_at, id
WHERE (created_at, id) > (:last_seen_created_at, :last_seen_id)
🔥 Такой подход широко используется в больших системах: API, лентах событий, лог-системах и бесконечных скроллах. ➡️ SQL Ready | #совет

"Как стать независимыми от зарубежных систем управления базами данных (СУБД)?" Этот вопрос сегодня остро стоит не только пере
"Как стать независимыми от зарубежных систем управления базами данных (СУБД)?" Этот вопрос сегодня остро стоит не только перед банками и финтех-компаниями, но и перед промышленными, торговыми, сервисными и государственными организациями. 💡Если такие вопросы возникают и у вас, приглашаем на вебинар от Диасофт и Ассоциации ФинТех (АФТ) на тему "Digital Q.DataBase: современный путь перехода с MS SQL Server и Oracle". 10 марта в 12:00 эксперты расскажут, как Digital Q.DataBase помогает перенести промышленные решения с MS SQL Server и Oracle, сохранив привычную логику и SQL-код. Они также представят новые возможности СУБД и расскажут практический кейс (историю успеха!) 🚀 💌Принимайте приглашение и регистрируйтесь по ссылке! #реклама О рекламодателе

❤️ Stepik SQL — практический курс с примерами запросов и упражнениями! Этот репозиторий содержит структурированные задания, схемы баз данных и примеры SQL-запросов из курса на Stepik. Материалы охватывают работу с таблицами, фильтрацию, JOIN, группировки, агрегаты и другие ключевые темы языка, с акцентом на практику. Отличный ресурс для тех, кто хочет закрепить теорию через задачи.
Оставляю ссылочку: GitHub 📱
➡️ SQL Ready | #репозиторий

Анти-JOIN — как корректно выбирать строки без связанных записей! Частая задача в SQL — найти строки, для которых отсутствуют связанные записи в другой таблице. Это классический anti-join. Например, нужно получить клиентов, которые ни разу не сделали заказ. Таблицы:
customers(id, name)
orders(id, customer_id, created_at)
LEFT JOIN + IS NULL:
SELECT c.id, c.name
FROM customers c
LEFT JOIN orders o  
  ON o.customer_id = c.id
WHERE o.id IS NULL;
LEFT JOIN возвращает всех клиентов. Если совпадений нет, поля из orders становятся NULL, и фильтр оставляет только клиентов без заказов. Проверять нужно гарантированно NOT NULL колонку правой таблицы (обычно PK, например o.id), иначе возможны логические ошибки. NOT EXISTS (предпочтительно):
SELECT c.id, c.name
FROM customers c
WHERE NOT EXISTS (
    SELECT 1
    FROM orders o
    WHERE o.customer_id = c.id
);
Запрос напрямую выражает отсутствие строк. В простом случае он эквивалентен LEFT JOIN, но лучше отражает намерение, устойчив к NULL в подзапросе и часто даёт более предсказуемый план при усложнении условий. Почему не NOT IN:
SELECT c.id, c.name
FROM customers c
WHERE c.id NOT IN (
    SELECT customer_id
    FROM orders
);
Если подзапрос возвращает хотя бы один NULL, результат может стать пустым из-за трёхзначной логики SQL. Использовать этот вариант безопасно только при гарантированном NOT NULL в orders.customer_id. Нюанс с условиями в JOIN:
SELECT c.id
FROM customers c
LEFT JOIN orders o  
  ON o.customer_id = c.id 
 AND o.created_at >= DATE '2026-01-01'
WHERE o.id IS NULL;
Этот запрос ищет клиентов без заказов после указанной даты. Если требуется найти клиентов вообще без заказов, добавлять условия в JOIN нельзя — это меняет бизнес-смысл. В таком случае корректнее использовать NOT EXISTS. 🔥 Минимально необходим индекс orders(customer_id). При частой фильтрации по дате логичен составной индекс (customer_id, created_at). ➡️ SQL Ready | #практика

📂 Напоминалка: как выполняется SQL-запрос в базе данных! Например, когда отправляешь SELECT, UPDATE или другой SQL, СУБД сна
📂 Напоминалка: как выполняется SQL-запрос в базе данных! Например, когда отправляешь SELECT, UPDATE или другой SQL, СУБД сначала обрабатывает его внутренне, а уже потом выполняет. На схеме — путь запроса: приём — разбор (парсер) — оптимизация — выполнение — доступ к данным — буферы, транзакции и блокировки — чтение/запись (память или диск). Сохрани, чтобы не забыть! ➡️ SQL Ready | #ресурс

Что же выведет консоль?
Anonymous voting

photo content

❤️ Мега интересную статью нашёл на Хабре: «DOOMQL: DOOM-подобный многопользовательский шутер на чистом SQL»! В этой статье: •
❤️ Мега интересную статью нашёл на Хабре: «DOOMQL: DOOM-подобный многопользовательский шутер на чистом SQL»! В этой статье: • Показано, как реализовать полноценную игру, от хранения состояния до рендеринга 3D-сцены — средствами одной лишь базы данных; • Разобрана архитектура, игровой цикл на транзакциях и многопользовательская синхронизация через SQL; • На реальном проекте демонстрируются неожиданные возможности СУБД далеко за пределами типичных CRUD-задач.
🔊 Продолжайте читать на Habr!
➡️ SQL Ready | #статья

🖥 Oracle: работа с датой и временем! Основные функции и приёмы работы с календарными значениями в Oracle: получение текущих
+4
🖥 Oracle: работа с датой и временем! Основные функции и приёмы работы с календарными значениями в Oracle: получение текущих даты и времени на стороне БД, вычисление интервалов, смещение по месяцам, усечение до нужной гранулярности, извлечение компонентов даты, а также корректное преобразование строк в DATE и TIMESTAMP. Полезно для отчётов, аналитики, планирования, ETL-процессов и любой логики, связанной с датами и временем. ➡️ SQL Ready | #шпора

Программисты, это вам 👇 Держите 5 каналов, которые реально помогают изучать программирование и IT с полного нуля: 🖥 Easy Co
Программисты, это вам 👇 Держите 5 каналов, которые реально помогают изучать программирование и IT с полного нуля: 🖥 Easy Coder — все направления IT. 👩‍💻 Easy Python — всё о Python. 🌐 Easy WebDev — Frontend, Backend. 🔠 Easy InfoSec — ИБ, Хакинг. 🖥 Easy GitHub — лучшее с GitHub. Тонны бесплатной инфы для любого уровня подготовки ✔️

Дедупликация с приоритетом, оставляем лучшую строку! Когда есть дубликаты по ключу (например, email), нужно сохранить запись с максимальным приоритетом — подтверждённую или самую новую. Таблица: users(id, email, is_verified, created_at) Сначала можно увидеть, какая строка будет считаться главной. Нумеруем строки внутри каждого email по приоритету:
SELECT id, email,
       ROW_NUMBER() OVER (
         PARTITION BY email
         ORDER BY is_verified DESC, created_at DESC
       ) rn
FROM users;
Оконная функция делит строки по email и присваивает номер согласно приоритету, где подтверждённые и более новые записи идут первыми. Оставим только одну запись на email — ту, у которой rn = 1:
SELECT *
FROM (
  SELECT *,
         ROW_NUMBER() OVER (
           PARTITION BY email
           ORDER BY is_verified DESC, created_at DESC
         ) rn
  FROM users
) t
WHERE rn = 1;
Все остальные строки в каждой группе автоматически становятся дублями. В PostgreSQL можно сделать то же самое короче:
SELECT DISTINCT ON (email)
       id, email, is_verified, created_at
FROM users
ORDER BY email, is_verified DESC, created_at DESC;
Здесь ORDER BY фактически задаёт правило выбора победителя внутри каждой группы. СУБД оставит одну строку на email согласно приоритету сортировки. 🔥 Такой приём используют при очистке импортов, объединении источников данных и выборе канонической записи пользователя. ➡️ SQL Ready | #практика

В России можно посещать IT-мероприятия хоть каждый день: как оффлайн, так и онлайн Но где их находить? Как узнавать о них ран
В России можно посещать IT-мероприятия хоть каждый день: как оффлайн, так и онлайн Но где их находить? Как узнавать о них раньше, чем когда все начнут выкладывать фотографии оттуда? Переходите на канал IT-Мероприятия России. В нём каждый день анонсируются мероприятия со всех городов России 📆 в канале размещаются как онлайн, так и оффлайн мероприятия; 👩‍💻 можно найти ивенты по любому стеку: программирование, frontend-backend разработка, кибербезопасность, дата-аналитика, osint, devops и другие; 🎙 разнообразные форматы мероприятий: митапы с коллегами по цеху, конференции и вебинары с известными опытными специалистами, форумы и олимпиады от важных представителей индустрии и многое другое А чтобы не искать по разным форумам и чатам новости о предстоящих ивентах: 🚀 IT-мероприятия России — подписывайся и будь в курсе всех предстоящих мероприятий!

Проверка совпадений сразу по нескольким полям одной операцией! Когда нужно сравнить строки по составному ключу, многие пишут
Проверка совпадений сразу по нескольким полям одной операцией! Когда нужно сравнить строки по составному ключу, многие пишут условия с AND, которые хуже читаются и сложнее поддерживаются:
u.email = b.email AND u.phone = b.phone
SQL умеет сравнивать кортежи целиком (row value), поэтому несколько колонок можно проверить одним выражением:
(email, phone)
Поддержка зависит от СУБД. Учитывайте поведение NULL и наличие составных индексов, оптимизация не всегда идентична AND. 🔥 Это особенно полезно при фильтрации, дедупликации, проверке попадания в списки, синхронизации таблиц и миграциях данных. ➡️ SQL Ready | #совет