ar
Feedback
Data Science. SQL hub

Data Science. SQL hub

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

По всем вопросам- @workakkk @itchannels_telegram - 🔥лучшие ит-каналы @ai_machinelearning_big_data - Machine learning @pythonl - Python @pythonlbooks- python книги📚 @datascienceiot - ml книги📚 РКН: https://vk.cc/cIi9vo #VRHSZ

إظهار المزيد

📈 نظرة تحليلية على قناة تيليجرام Data Science. SQL hub

تُعد قناة Data Science. SQL hub (@sqlhub) في القطاع اللغوي الروسية لاعباً نشطاً. يضم المجتمع حالياً 35 960 مشتركاً، محتلاً المرتبة 3 610 في فئة التكنولوجيات والتطبيقات والمرتبة 17 707 في منطقة روسيا.

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

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

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

  • حالة التحقق: غير موثّقة
  • معدل التفاعل (ER): يبلغ متوسط تفاعل الجمهور 6.43‎%. وخلال أول 24 ساعة من النشر يحصد المحتوى عادةً 3.46‎% من ردود الفعل نسبةً إلى إجمالي المشتركين.
  • وصول المنشورات: يحصل كل منشور على متوسط 2 311 مشاهدة. وخلال اليوم الأول يجمع عادةً 1 243 مشاهدة.
  • التفاعلات والاستجابة: يتفاعل الجمهور بانتظام؛ متوسط التفاعلات لكل منشور يبلغ 10.
  • الاهتمامات الموضوعية: يركز المحتوى على مواضيع رئيسية مثل sql, индекс, postgres, index, sqlite.

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

يصف المؤلف القناة بأنها مساحة للتعبير عن الآراء الذاتية:
По всем вопросам- @workakkk @itchannels_telegram - 🔥лучшие ит-каналы @ai_machinelearning_big_data - Machine learning @pythonl - Python @pythonlbooks- python книги📚 @datascienceiot - ml книги📚 РКН: https://vk.cc/cIi9vo #VRHSZ

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

35 960
المشتركون
+1924 ساعات
+147 أيام
+6630 أيام
أرشيف المشاركات
Repost from Machinelearning
🧠 MCP сервер для баз данных от Google Он выступает прослойкой между вашим агентом (например, LangChain, LlamaIndex, VertexAI
🧠 MCP сервер для баз данных от Google Он выступает прослойкой между вашим агентом (например, LangChain, LlamaIndex, VertexAI) и базой данных, упрощая работу с базой, подключение, управление, безопасность и мониторинг., Подходит для разработки AI-агентов, которые могут создавать и управлять в реальными БД. Особенности: ✔️ Подключение к БД за < 10 строк Python ✔️ Встроенный pooling и аутентификация ✔️ Простая интеграция в агентов (LangChain, Autogen, и т.д.) ✔️100% open-source ✔️Поддержка разных БД: PostgreSQL, MySQL, SQLite, SQL Server, AlloyDB, Cloud SQL, Spanner, BigQuery, Bigtable, Couchbase, Dgraph, Redis, Neo4j и др. ✔️Удобная конфигурация : простой синтаксис YAML для описания функций и запросов. Если делаете агентов, которые работают с SQL/PostgreSQL/MySQL — точно стоит попробовать. ▪ GitHub: https://github.com/googleapis/genai-toolbox @ai_machinelearning_big_data #AI #ML #aiagent #opensource #MCP #databases #genai

🍉 WatermelonDB — гибкая база данных для React. Эта СУБД предлагает необычный подход к работе с данными в React-приложениях.
🍉 WatermelonDB — гибкая база данных для React. Эта СУБД предлагает необычный подход к работе с данными в React-приложениях. Вместо загрузки всей информации при старте, она подгружает только то, что действительно нужно пользователю прямо сейчас. Инструмент обладает гибридной архитектурой: SQLite на низком уровне обеспечивает надежность, а прослойка на React автоматически обновляет интерфейс при изменениях. Например, новое сообщение в чате мгновенно появится во всех открытых списках без ручного обновления. 🤖 GitHub @sqlhub

⚡️ Почему лучшие разработчики всегда на шаг впереди? Потому что они знают, где брать настоящие инсайд! Оставь “программирование в вакууме” в прошлом, выбирай свой стек — подпишись и погружайся в поток идей, лайфхаков и знаний, которые не найдёшь в открытом доступе. ИИ: t.me/ai_machinelearning_big_data Python: t.me/pythonl Linux: t.me/linuxacademiya Мл собес t.me/machinelearning_interview C++ t.me/cpluspluc Docker: t.me/DevopsDocker Хакинг: t.me/linuxkalii МЛ: t.me/machinelearning_ru Devops: t.me/DevOPSitsec Data Science: t.me/data_analysis_ml Javascript: t.me/javascriptv C#: t.me/csharp_ci Java: t.me/java_library Базы данных: t.me/sqlhub Python собеседования: t.me/python_job_interview Мобильная разработка: t.me/mobdevelop Golang: t.me/Golang_google React: t.me/react_tg Rust: t.me/rust_code ИИ: t.me/vistehno PHP: t.me/phpshka Android: t.me/android_its Frontend: t.me/front Big Data: t.me/bigdatai МАТЕМАТИКА: t.me/data_math Kubernets: t.me/kubernetc Разработка игр: https://t.me/gamedev Физика: t.me/fizmat Папка Go разработчика: t.me/addlist/MUtJEeJSxeY2YTFi Папка Python разработчика: t.me/addlist/eEPya-HF6mkxMGIy Папка ML: https://t.me/addlist/2Ls-snqEeytkMDgy Папка FRONTEND: https://t.me/addlist/mzMMG3RPZhY2M2Iy 🎓954ГБ ОПЕНСОРС КУРСОВ: @courses 😆ИТ-Мемы: t.me/memes_prog 🇬🇧Английский: t.me/english_forprogrammers 🧠ИИ: t.me/vistehno 🖥 Chatgpt для кода в тг: @Chatgpturbobot - 📕Ит-книги: https://t.me/addlist/BkskQciUW_FhNjEy 💼ИТ-вакансии t.me/addlist/_zyy_jQ_QUsyM2Vi Подпишись, чтобы всегда знать, куда двигаться дальше!

🌺 LotusDB — гибридный key-value движок на Go. Этот проект объединяет лучшее из двух миров — скорость чтения B+-деревьев и эф
🌺 LotusDB — гибридный key-value движок на Go. Этот проект объединяет лучшее из двух миров — скорость чтения B+-деревьев и эффективность записи LSM-деревьев. Инструмент позиционируется как альтернатива Badger и BBolt, но с меньшими накладными расходами на чтение и дисковое пространство. Проект поражает простотой интеграции: достаточно импортировать пакет и указать путь для хранения данных. LotusDB активно развивается, а в Slack-чате уже собирается сообщество энтузиастов. 🤖 GitHub @sqlhub

«Идейные победят наёмников» — Альтмана снова качает Пока Альтман рассказывает сотрудникам OpenAI, что "важны идеи, а не деньг
«Идейные победят наёмников» — Альтмана снова качает Пока Альтман рассказывает сотрудникам OpenAI, что "важны идеи, а не деньги", рынок переманивает его ключевых ресерчеров пачками. Гонка за мозги выглядит всё жёстче — и всё прозрачнее. 🚀 Цукерберг собрал новое AGI-подразделение: 12 человек, многие из которых — бывшие сотрудники OpenAI. Из них 8 — с азиатскими фамилиями. Совпадение? Вряд ли. 💰 Инсайды про $100M signing bonus пока разнятся: то ли вброс, то ли реальность. Но для контекста: CEO Apple и Microsoft за 2024 получили меньше $80 млн за весь год. 📊 Конкуренты тоже не дремлют: - Thinking Machines Миры Мурати — $500K+ в год - Anthropic — $400K - OpenAI — $300K, но “с душой” Вчера Альтман заявил команде, что "идейные победят наёмников". Похоже, он всё ещё не понял, как работает рынок, особенно когда GPU у Су и Хуанга раскупаются быстрее, чем стартапы успевают написать README. 🔥 Сегодняшняя гонка AGI — это не просто про интеллект. Это про то, кто сможет купить больше китайских исследователей, больше графических карт и времени больше не терять. 🐉 Китайцы в Китае уже почти догнали китайцев в США. @sqlhub

Не уверены, что у вас на сервере Postgres установлен правильный набор расширений? Удивляетесь, что сервер ваших коллег умеет
Не уверены, что у вас на сервере Postgres установлен правильный набор расширений? Удивляетесь, что сервер ваших коллег умеет больше, чем ваш? Присоединяйтесь к нашему вебинару «Особенности реализации запросов в PostgreSQL» и узнайте, как сделать все правильно! ✅ Практика: Создание собственных решений на основании самых полезных расширений Postgres, которые ставятся на большинство производственных серверов 📌Регистрируйтесь на урок, чтобы сделать ваш сервер Postgres лучше! https://tglink.io/96dee17b0f8c?erid=2W5zFHPyF52 #реклама О рекламодателе

🐳 Oracle Database 23.8 Free: мультиплатформенные контейнеры уже доступны! Gerald Venzl сообщил, что новые образы Oracle Data
🐳 Oracle Database 23.8 Free: мультиплатформенные контейнеры уже доступны! Gerald Venzl сообщил, что новые образы Oracle Database 23.8 Free теперь доступны на Docker Hub и GitHub Container Registry: - docker.io/gvenzl/oracle-free - ghcr.io/gvenzl/oracle-free 💡 Что нового: ✅ Автоплаг PDB: Если вы заранее подготовили .pdb`-файлы, просто поместите их в `/pdb-plug и укажите нужные имена через переменную ORACLE_DATABASE. Контейнер сам подключит их как полноценные базы, минуя процесс создания с нуля. ✅ Новый механизм healthcheck-кодов: Контейнер теперь возвращает коды от 0 до 5, показывая текущую стадию запуска: - 0 — база данных полностью готова - 1 — база ещё не готова - 2 — контейнер инициализируется - 3 — происходит подключение/создание PDB - 4 — выполняются init-скрипты - 5 — выполняются пользовательские startup-скрипты ✅ Новые возможности в самой Oracle Database 23.8: - Поддержка векторных операций и пользовательских функций расстояния - Расширенная работа с JSON-типами и массивами - Dynamic Statistics для PL/SQL - Elastic Vector Memory - Ограниченное выполнение JavaScript в БД (Restricted Execution Contexts) 📦 Пример запуска:

docker pull gvenzl/oracle-free:23.8-full
docker run --name oracle \
  -e ORACLE_DATABASE="mydb" \
  -v $(pwd)/mydb.pdb:/pdb-plug/mydb.pdb \
  gvenzl/oracle-free:23.8-full
📌 Подробнее @sqlhub

🌌 SlateDB — хранилище нового поколения, где облако становится диском. Этот проект переосмысливает классические LSM-движки, п
🌌 SlateDB — хранилище нового поколения, где облако становится диском. Этот проект переосмысливает классические LSM-движки, перенося данные не на локальный SSD, а прямо в объектные хранилища вроде S3 или MinIO. За счет этого SlateDB предлагает почти безграничную емкость и встроенную репликацию, жертвуя лишь долями секунд задержки. Разработчики добавили множество полезных фич для борьбы с лаг-проблемами: батчинг записей, кэширование блоков и bloom-фильтры превращают работу с облаком в почти локальный опыт. Интеграция через object_store позволяет подключать даже кастомные хранилища. 🤖 GitHub @sqlhub

Customer Orders — пример схемы базы данных от Oracle Примерная схема Customer Orders (CO) моделирует систему управления заказами в розничной торговле. Подходит для обучения, тестов и демонстрации возможностей Oracle Database. 🔹 Основные особенности: • Хранение товаров с описанием в JSON • Учёт заказов, клиентов, магазинов и отправок • Поддержка офлайн и онлайн-продаж • Использование современных SQL-возможностей 🔹 Таблицы: • products — товары, цены, JSON-описание и изображения • customers — покупатели с ID, именем и email • orders — заказы с датой, статусом и привязкой к магазину • order_items — позиции в заказе, количество, цена, доставка • stores — физические и онлайн-точки продаж • shipments — информация об отправке товара 📦 Схема отражает типичный розничный бизнес-процесс и показывает, как можно сочетать структурированные данные и JSON в Oracle DB. 📌 Github @sqlhub

🐘 Medoo — минималистичный PHP-фреймворк для работы с базами данных, упакованный в один файл. Этот инструмент особенно понрав
🐘 Medoo — минималистичный PHP-фреймворк для работы с базами данных, упакованный в один файл. Этот инструмент особенно понравится тем, кто ценит простоту: подключение к MySQL, PostgreSQL или SQLite требует всего несколько строк кода, а синтаксис напоминает обычный массив PHP. Несмотря на лёгкость, фреймворк умеет строить сложные запросы, защищает от SQL-инъекций и работает с Laravel, Yii и другими популярными фреймворками. Установка через Composer занимает секунды, а MIT-лицензия позволяет использовать его даже в коммерческих проектах. 🤖 GitHub @sqlhub

👨‍💻 Знания, за которые платят, — теперь бесплатно. Yandex Cloud выпустил курс по Apache Spark и обработке больших данных на
👨‍💻 Знания, за которые платят, — теперь бесплатно. Yandex Cloud выпустил курс по Apache Spark и обработке больших данных на Yandex Data Processing. И это не «поверхностный вводный». Это 75 часов практики, 27 заданий, архитектура, пайплайны, Data Lakehouse, обработка массивов данных, и стриминг — всё, что нужно, чтобы разобраться, как анализировать и управлять терабайтами данных. — Курс делают практикующие архитекторы из Yandex Cloud и Hilbert Team — Можно проходить в любое время и из любой точки — И еще раз: это бесплатно. Регистрируйтесь уже сегодня. Доступ открыт тут. @sqlhub

🧠 Oracle SQL — продвинутый приём: `MERGE` вместо `UPDATE` + `INSERT` Если ты сначала пытаешься обновить строку, а если её нет — вставляешь новую, не пиши две команды. Используй MERGE — это быстрее, чище и атомарно. 🔧 Пример:

MERGE INTO employees e
USING (SELECT 101 AS emp_id, 'Alice' AS name FROM dual) src
ON (e.emp_id = src.emp_id)
WHEN MATCHED THEN
    UPDATE SET e.name = src.name
WHEN NOT MATCHED THEN
    INSERT (emp_id, name)
    VALUES (src.emp_id, src.name);
📌 Что делает: • Ищет по ключу (`ON`) • Если запись есть — обновляет • Если нет — вставляет • Всё за один проход, без гонок и лишних проверок ⚡ Почему это важно: • Меньше round-trip'ов между приложением и БД • Атомарная логика — MERGE гарантирует целостность • Лучше подходит для ETL, синхронизации, загрузки внешних данных 🧠 Вывод: если пишешь IF EXISTS THEN UPDATE ELSE INSERT — ты уже проиграл. Пиши MERGE, и база всё сделает за тебя.

⚡️Качество данных: почему это также важно для аналитика как Python и SQL Аналитик данных — это специалист, который добывает ц
⚡️Качество данных: почему это также важно для аналитика как Python и SQL Аналитик данных — это специалист, который добывает ценную информацию из достоверных данных, чтобы бизнес мог принимать обоснованные решения. Для этого используются те же инструменты, что и для самого анализа — Python, SQL, математическая статистика и автоматизация процессов. Присоединяйтесь к нашему вебинару, где разберём: 🟠Как качество данных влияет на принятие решений и карьеру аналитика; 🟠Метрики качества данных: актуальность, допустимость, полнота и другие; 🟠Частые причины проблем с качеством данных; 🟠Методы повышения качества данных: определение требований к КД, мониторинг КД, решение инцидентов. Спикер: Павел Беляев, руководитель группы дата-аналитиков в компании Яндекс eLama. 📅 Встречаемся 24 июня в 18:30 по МСК 😶Зарегистрироваться на бесплатный вебинар

Repost from Machinelearning
🚀 Парадигма меняется: Polaris выводит локальные модели на новый уровень Polaris — это набор простых, но мощных приёмов, кото
+9
🚀 Парадигма меняется: Polaris выводит локальные модели на новый уровень Polaris — это набор простых, но мощных приёмов, который позволяет даже компактным LLM (4 B, 7 B) догнать и превзойти «тяжеловесов» на задачах рассуждения (открытая 4B модель превосходи Claude-4-Opus). Вот как это работает и почему важно: • Управление сложностью данных – Генерируем несколько (например, 8) вариантов решения от базовой модели – Оцениваем, какие примеры слишком простые (8/8) или слишком сложные (0/8), и убираем их – Оставляем «умеренные» задачи с правильными решениями в 20–80 % случаев, чтобы быть ни слишком лёгкими, ни слишком сложными • Разнообразие «прогонов» (rollout-ов) – Мы запускаем модель несколько раз на одной и той же задаче и смотрим, как меняются её рассуждения: одни и те же входные данные, но разные «пути» к решению. – Считаем, насколько разнообразны эти пути (т. е. их «энтропия»): если модели всё время идут по одной линии, новых идей не появляется; если слишком хаотично — рассуждения неустойчивы. – Задаём начальную “температуру” генерации там, где баланс между стабильностью и разнообразием оптимален, а затем постепенно её повышаем, чтобы модель не застревала на одних и тех же шаблонах и могла исследовать новые, более креативные ходы. • “Train-short, generate-long” – Во время RL-обучения используем короткие цепочки рассуждений (короткие CoT) для экономии ресурсов – На inference увеличиваем длину CoT, чтобы получить более детальные и понятные объяснения без накрутки стоимости обучения • Динамическое обновление датасета – По мере роста точности удаляем примеры с accuracy > 90 %, чтобы не «портить» модель слишком лёгкими задачами – Поддерживаем постоянный вызов модели на её пределе возможностей • Улучшенная reward-функция – Комбинируем стандартный RL-reward с бонусами за разнообразие и глубину рассуждений – Это позволяет модели учиться не только давать правильный ответ, но и объяснять логику своих решений Преимущества Polaris • Благодаря Polaris даже компактные LLM (4 B и 7 B) достигают и даже «тяжеловесов» (32 B–235 B) на AIME, MATH и GPQA • Обучение на доступных GPU уровня consumer-grade — до 10× экономии ресурсов и затрат по сравнению с традиционными RL-пайплайнами • Полный открытый стек: исходники, подборка данных и веса • Простота и модульность: готовый к использованию фреймворк для быстрого внедрения и масштабирования без дорогостоящей инфраструктуры Polaris доказывает, что качество данных и грамотная настройка RL-процесса важнее просто «больших моделей». С ним вы получите продвинутую reasoning-LLM, которую можно запустить локально и масштабировать везде, где есть обычная GPU. ▪Blog post: https://hkunlp.github.io/blog/2025/PolarisModel: https://huggingface.co/POLARIS-ProjectCode: https://github.com/ChenxinAn-fdu/POLARISNotion: https://honorable-payment-890.notion.site/POLARIS-A-POst-training-recipe-for-scaling-reinforcement-Learning-on-Advanced-ReasonIng-modelS-1dfa954ff7c38094923ec7772bf447a1 @ai_machinelearning_big_data #ml #ai • #Polaris #PostTraining #ReinforcementLearning #LLM

«Я в режиме реального времени поясняла структуру запросов / ответов в Postman и разбирала документацию в Swagger», — пишет ан
«Я в режиме реального времени поясняла структуру запросов / ответов в Postman и разбирала документацию в Swagger», — пишет аналитик, который прошел наш курс, а потом два технических собеседования в международные компании. Приятно, конечно ❤️ Если в 2025 году вы хотите: — научиться выбирать стиль интеграции под вашу задачу; — начать проектировать с нуля и описывать интеграции в современных стилях (API: REST, SOAP, gRPC и других, + брокеры сообщений); — узнать как правильно собирать требования и моделировать в UML; — подготовиться к собеседованию, решив более 100 заданий; — запустить свой API на Python. Значит наш курс для вас! 🚀 Начните с открытых бесплатных уроков — переходите в бот курса и жмите «Старт» 👇 @studyit_help_bot 🚀 Скидка на курс от канала — 1 000₽ на Stepik по промокоду SQLHUB до конца июня.

🦀 Новый SQL-клиент на Rust — rsql Лёгкий, быстрый и мощный инструмент для работы с файлами и базами данных из терминала. 📌
🦀 Новый SQL-клиент на Rust — rsql Лёгкий, быстрый и мощный инструмент для работы с файлами и базами данных из терминала. 📌 Что умеет ● Поддержка множества форматов: CSV, JSON, Parquet, Excel, XML, YAML, Avro и др. ● Подключение к SQLite, PostgreSQL, MySQL, SQL Server, DuckDB, Snowflake, CrateDB и даже DynamoDB ● Работа с архивами: Gzip, Zstd, Brotli, LZ4, Bzip2 и др. ● Удобная CLI: автодополнение, подсветка, история, интерактивный REPL ● Вывод в разных форматах: Markdown, HTML, JSON, CSV, plaintext ● 100 % безопасный Rust-код — #![forbid(unsafe_code)] ● Кастомизация: Vi/Emacs режимы, локализации, собственные темы вывода 📥 Установка

curl -LsSf https://raw.githubusercontent.com/theseus-rs/rsql/main/install.sh | sh
🧪 Пример использования

# Одноразовый запрос к SQLite
rsql --url "sqlite://file.db" -- "SELECT * FROM users LIMIT 5;"

# Интерактивная сессия с PostgreSQL
rsql --url "postgres://user:pass@localhost/db"
🆕 Что нового в v0.19.0 Добавлены драйверы CrateDB и FlightSQL Появился metadata-catalog для удобной навигации по источникам данных Улучшены примеры, обновлены зависимости, повышена стабильность 🔗 GitHub: https://github.com/theseus-rs/rsql rsql — универсальный инструмент, который понравится аналитикам, разработчикам и data-инженерам, нуждающимся в максимально быстром и простом SQL-клиенте. @sqlhub

MТС Web Services приглашает на митап True Tech QA 📍 3 июля | 19:00 📍 Офлайн в Москве | Онлайн На True Tech QA выступят эксп
MТС Web Services приглашает на митап True Tech QA 📍 3 июля | 19:00 📍 Офлайн в Москве | Онлайн На True Tech QA выступят эксперты из MWS, Альфа-банка и BugBuster. Обсудим мобильную ферму с возможностью ручного и автотестирования MWS SunQ, фреймворк Akita2, автотесты на естественном языке и процессы предективной оценки качества. Для участия зарегистрируйся по ссылке

🐘 MikroORM — ORM на TypeScript с “Unit of Work”. Этот инструмент привносит паттерны Data Mapper и Identity Map из мира Java/
🐘 MikroORM — ORM на TypeScript с “Unit of Work”. Этот инструмент привносит паттерны Data Mapper и Identity Map из мира Java/Hibernate в экосистему Node.js. Здесь изменения накапливаются и применяются одной транзакцией при вызове em.flush(), что упрощает работу со сложными доменными моделями. Для работы с отношениями достаточно добавить entity в коллекцию, и MikroORM сам решит, нужен INSERT или UPDATE. Инструмент поддерживает 7 СУБД, включая MongoDB и libSQL, а для валидации достаточно декораторов в духе @Property(). 🤖 GitHub @sqlhub

🧩 Интересная SQL-задача: «Вечные работники» Представим, что у вас есть таблица employees, где хранится история переводов сотрудников между отделами:

CREATE TABLE employees (
    employee_id INT,
    department VARCHAR(50),
    start_date DATE,
    end_date DATE
); 
Пример данных: employee_id department start_date end_date 1 Sales 2020-01-01 2022-01-01 1 HR 2022-01-02 NULL 2 Sales 2019-05-01 2021-05-01 2 Sales 2021-05-02 NULL 3 HR 2022-06-01 NULL 🎯 Задача: Найдите всех сотрудников, которые работали в одном и том же отделе без перерыва более 3 лет. Если человек работал в Sales 2+ периода подряд — они считаются одним, если не было пропуска между ними. 🛠 Решение на PostgreSQL:

WITH ordered_periods AS (
  SELECT *,
         LAG(end_date) OVER (PARTITION BY employee_id, department ORDER BY start_date) AS prev_end
  FROM employees
),
grouped_periods AS (
  SELECT *,
         CASE
           WHEN prev_end IS NULL OR prev_end + INTERVAL '1 day' < start_date THEN 1
           ELSE 0
         END AS is_new_group
  FROM ordered_periods
),
group_tags AS (
  SELECT *,
         SUM(is_new_group) OVER (PARTITION BY employee_id, department ORDER BY start_date) AS group_id
  FROM grouped_periods
),
grouped_ranges AS (
  SELECT employee_id, department, group_id,
         MIN(start_date) AS period_start,
         MAX(COALESCE(end_date, CURRENT_DATE)) AS period_end
  FROM group_tags
  GROUP BY employee_id, department, group_id
),
long_periods AS (
  SELECT employee_id, department, period_start, period_end,
         (period_end - period_start) AS duration_days
  FROM grouped_ranges
  WHERE period_end - period_start > INTERVAL '3 years'
)
SELECT *
FROM long_periods;
🔍 Разбор логики: • Сначала находим предыдущие даты окончания для сравнения. • Метим, где начинается новая непрерывная группа. • Суммируем метки — получаем уникальные группы без разрывов. • Группируем и считаем длительность. • Оставляем только тех, кто проработал более 3 лет подряд в одном отделе. 📌 Такая задача хороша для собеседований: проверяет оконные функции, интервалы и группировки по логике, а не только по ключам. @sqlhub

⚡Открытая трансляция главного зала Saint HighLoad++ 2025!🖐️ Подключайтесь и слушайте доклады от спикеров Garage Eight, Яндек
⚡Открытая трансляция главного зала Saint HighLoad++ 2025!🖐️ Подключайтесь и слушайте доклады от спикеров Garage Eight, Яндекса, Сбера, Ozon и других компаний. Saint HighLoad++ 2025 — это конференция, которая определяет будущее высоконагруженных систем. 23 и 24 июня все желающие могут бесплатно посмотреть онлайн-трансляцию главного зала. Открытую трансляцию организовали совместно с генеральным партнером конференции — Garage Eight. Garage Eight — международная продуктовая IT-компания. С 2011 года развивает экосистему высоконагруженных инвестиционных продуктов, у которых сотни тысяч пользователей в 183 странах. Продукты отмечены наградами от Global Banking and Finance Review, Global Business Magazine и World Business Stars. Как всегда, в главном зале — топовые эксперты и самые актуальные темы. ✅ Подключайтесь