sqlhub | Unsorted

Telegram-канал sqlhub - Data Science. SQL hub

36043

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

Subscribe to a channel

Data Science. SQL hub

🧩 Задача из интервью TikTok по SQL

Найдите пользователей, которые не подтвердили регистрацию в день регистрации, но подтвердили на следующий день.

Исходные таблицы:
- emails(email_id, user_id, signup_date)
- texts(text_id, email_id, signup_action {'Confirmed','Not confirmed'}, action_date)

Решение (универсально для Postgres/MySQL):


SELECT DISTINCT e.user_id
FROM emails e
WHERE EXISTS (
SELECT 1
FROM texts t1
WHERE t1.email_id = e.email_id
AND t1.signup_action = 'Confirmed'
AND DATE(t1.action_date) = DATE(e.signup_date + INTERVAL '1 day') -- подтвердил на 2-й день
)
AND NOT EXISTS (
SELECT 1
FROM texts t0
WHERE t0.email_id = e.email_id
AND t0.signup_action = 'Confirmed'
AND DATE(t0.action_date) = DATE(e.signup_date) -- не подтвердил в день регистрации
);


Вариант через агрегацию (Postgres)🧩️️


SELECT e.user_id
FROM emails e
JOIN texts t ON t.email_id = e.email_id
GROUP BY e.user_id, e.signup_date
HAVING COUNT(*) FILTER (
WHERE t.signup_action = 'Confirmed' AND DATE(t.action_date) = DATE(e.signup_date)
) = 0
AND COUNT(*) FILTER (
WHERE t.signup_action = 'Confirmed' AND DATE(t.action_date) = DATE(e.signup_date + INTERVAL '1 day')
) >= 1;


@sqlhub

Читать полностью…

Data Science. SQL hub

⚡️ Tencent дропнули Hunyuan-MT — мощные open-source модели для перевода

Что внутри:
- Доступны модели Hunyuan-MT-7B и Hunyuan-MT-Chimera-7B
- Поддержка 33 языков
- Chimera-7B — это первая d индустрии откртытая ансамблевая модель

🏆 Результаты:
- 1-е место в 30 из 31 категорий на международном конкурсе WMT25 (Workshop on Machine Translation 2025, крупнейшая в мире конференция-соревнование по машинному переводу)
- Hunyuan-MT-7B лидирует среди моделей своего размера

🟠Модели: https://huggingface.co/collections/tencent/hunyuan-mt-68b42f76d473f82798882597
🟠 Репозиторий: https://github.com/Tencent-Hunyuan/Hunyuan-MT
Demo: https://hunyuan.tencent.com/modelSquare/home/list

@ai_machinelearning_big_data


#AI #NLP #Translation #Tencent

Читать полностью…

Data Science. SQL hub

💡 SQL: условные агрегаты через CASE !!!

Хотите посчитать сумму только по условию прямо внутри агрегата?
Для этого не нужен отдельный WHERE — используйте CASE WHEN.


SELECT
customer_id,
SUM(CASE WHEN status = 'completed' THEN amount ELSE 0 END) AS completed_sum,
SUM(CASE WHEN status = 'pending' THEN amount ELSE 0 END) AS pending_sum
FROM orders
GROUP BY customer_id;


🔎 В одном запросе можно посчитать суммы по разным статусам — и не делать несколько JOIN или подзапросов.
Работает также с COUNT(), AVG() и другими агрегатами.

@sqlhub

Читать полностью…

Data Science. SQL hub

🗄 MySQL vs Postgres: как кэшируют страницы данных

⚡ Подходы разные:
- MySQL (InnoDB) стремится всё держать под своим контролем
- Postgres больше доверяет операционной системе

MySQL / InnoDB
- Своя память под кэш: innodb_buffer_pool_size обычно = 70%+ RAM на выделенном сервере
- Обход кэша ОС: с innodb_flush_method='O_DIRECT' InnoDB работает напрямую с диском
- Двухсекционный LRU: страницы сначала в old, только потом (через innodb_old_blocks_time`) в `young. Это спасает от «выметания» кэша при больших сканах

Postgres
- Внутренний кэш + page cache ОС: shared_buffers обычно около 30% RAM, остальное оставляют ОС
- Clock-sweep: у страницы счётчик обращений, уменьшается при «прокрутке часов». Когда падает до нуля — страница освобождается

Практические выводы
- Bulk-операции: InnoDB устойчивее к «пробиванию» кэша, в Postgres часть нагрузки идёт в кэш файловой системы
- Тюнинг памяти: в MySQL раздувают buffer pool, в Postgres shared_buffers умеренный, а остальное доверяют ОС

Что стоит проверить в бенчмарках Postgres
- Размер shared_buffers: 4% / 10% / 30% / 50% RAM
- Сценарии: OLTP, последовательные сканы, смешанные нагрузки
- Рабочий набор: меньше / равен / больше доступной RAM
- Метрики: TPS/QPS, p95/p99 латентность, hit ratio, про

https://github.com/postgres/postgres/blob/master/src/backend/storage/buffer/README

Читать полностью…

Data Science. SQL hub

🖥 YTsaurus — инфраструктура хранения и обработки больших данных. Включает динамические таблицы, которые позволяют хранить и обрабатывать большие данные для десятков тысяч пользователей в реальном времени. 

Инструмент идеально подходит для высоконагруженных сценариев, где требуются горизонтальное масштабирование, exactly-once семантика и время отклика в миллисекунды. Может применяться в том числе и для создания системы поведенческого таргетинга. Поддерживает MapReduce и NVMe SSD. 

🟠 Пример использования YTsaurus на Хабре

Читать полностью…

Data Science. SQL hub

🦆 Полезный интерактивный тренажёр по SQL

Учитесь писать SQL-запросы через игру:
- Пошаговые уроки с живым редактором — пишешь код и сразу видишь результат.
- Задачи и мини-квесты, где вы помогаете Дакберту пробираться сквозь потоки данных.
- Работает бесплатно, прямо в браузере или на телефоне.

🎮 Попробовать: https://dbquacks.com/

Читать полностью…

Data Science. SQL hub

Как начать в Data Science, когда все вокруг уже сеньоры?

До 15 сентября в Вышке продолжается набор на онлайн-магистратуру «Магистр по наукам о данных». Поступить можно даже без технического бэкграунда, а учиться — в удобном формате. Вы научитесь:

⚪️ работать с данными
⚪️ применять классические модели ML
⚪️ решать бизнес-задачи из сфер DA и DS

Вам подходит программа, если вы
⭐️ Из другой сферы деятельности, но хотите войти в IT
⭐️ Самоучка и хотите подтвердить знания дипломом
⭐️ Хотите стать IT-специалистом, но пока не понимаете, каким именно
⭐️ Хотите освоить инструменты Data Science для своих проектов в другой сфере

Как проходит обучение
⚪️ Онлайн-занятия в прямом эфире с возможностью задавать вопросы
⚪️ Диплом НИУ ВШЭ с указанием очной формы обучения
⚪️ Поддержка в чате 24/7

Прием документов до 15 сентября, 17:00. Подробнее о программе можно узнать тут.

А чтобы узнать, как подать документы, вступайте в чат абитуриентов — там найдете инструкции и сможете получить ответы на любые вопросы по поступлению.

Читать полностью…

Data Science. SQL hub

📉 На Уолл-стрит началась просадка AI-акций — и спусковым крючком оказался в отчёте MIT.

В нём говорится, что 95% компаний не получают прибыли от внедрения generative AI, а реальные результаты видят только 5%.

Почему так:
- Компании запускают до того, как готовы пайплайны данных, безопасность и обучение сотрудников
- Деньги уходят на сервера и модели, а внедрение в процессы оказывается долгим и дорогим

⚠️ На фоне разговоров про «AI-пузырь» фонды начали выходить из популярных AI-акций, что вызвало обвал.

👉 Но это похоже не на крах, а на проверку реальностью.

Дальнейший рост будет зависеть от реальной экономики ИИ: снижения стоимости инференса и доказанного роста продуктивности.

📌 Источник

Читать полностью…

Data Science. SQL hub

🎮 Учим SQL через захватывающую аркадную игру

Разработчики замутили настоящий олдскульный
шедевр, который сделает из вас МАСТЕРА баз данных и точно не даст заскучать.

• Проходим уровни, собираем пазлы вместе с уткой DuckDB и прокачиваем SQL на максимум.
• Квесты, задачи, подсказки — всё как в настоящем приключении.
• Работает прямо в браузере и даже на телефоне.

Любые запросы к базам — щёлкаем как семечки 👉 https://dbquacks.com/.

Читать полностью…

Data Science. SQL hub

🚀 Ускоряем работу с данными с помощью Delta Lake

Когда нужно добавить новые данные к уже существующему набору, есть два подхода:

🔴 Без Delta Lake
- Сначала загружаешь все старые данные (например, 10 000 записей) из CSV.
- Загружаешь новые данные (например, 50 записей).
- Объединяешь их, что требует обработки всех 10 050 записей.
- Это медленно, расходует память и ресурсы.

🟢 С Delta Lake
- Хранишь данные в формате Delta Lake.
- Загружаешь только новые записи (например, 50 штук).
- Добавляешь их напрямую в существующую таблицу с помощью append, обрабатывая только новые данные.
- Экономия времени, памяти и ресурсов.

💡 Преимущества Delta Lake:
- Инкрементальная загрузка данных.
- Работа с большими объёмами без полной перезагрузки.
- Поддержка транзакций (ACID).
- Совместимость с большими дата-платформами (Spark, Pandas и др.).

📊 Если у тебя миллионы строк — выигрыш в скорости будет колоссальным.

@sqlhub

Читать полностью…

Data Science. SQL hub

🐘 Tarantool — необычная платформа, сочетающая in-memory базу данных с полноценным сервером приложений на Lua. Проект имеет два движка хранения: in-memory с WAL и LSM-дерево, поддерживает ANSI SQL и асинхронную репликацию.

Инструмент имеет встроенный JIT-компилятор LuaJIT, позволяющий исполнять бизнес-логику прямо рядом с данными. При этом сохраняется совместимость с внешними СУБД вроде PostgreSQL через коннекторы. Проект полезен для высоконагруженных веб-сервисов, кэширующих слоёв и систем обработки очередей сообщений.

🤖 GitHub

@sqlhub

Читать полностью…

Data Science. SQL hub

Разбираем тестовое задание в Яндекс на позицию Junior аналитика данных

Тестовое задание — важная часть трудоустройства аналитика. Это шанс показать свои навыки на практике и получить оффер мечты.

Приглашаем на бесплатный вебинар, где Андрон Алексанян — эксперт в области аналитики и CEO школы аналитики Simulative — в прямом эфире разберет тестовое задание в Яндекс на позицию Junior аналитика данных.

⚡️На вебинаре вы:

🟠узнаете, какие навыки и знания необходимы для успешного выполнения заданий;
🟠поймёте, что хочет увидеть работодатель;
🟠получите советы и лайфхаки;
🟠вместе с Андроном разберете в прямом эфире реальный пример тестового 🔥


Чему именно научимся на вебинаре:
🟠С помощью Pandas проанализируем Яндекс-запросы за несколько недель, загрузив их из json-файла;
🟠Найдем закономерности и отличия использования сервиса на мобильных устройствах и компьютерах;
🟠Разберем фишки Pandas: сложную агрегацию, маппинг, конкатенацию, чейнинг и др.


🕗 Настоятельно рекомендуем не пропускать — для зрителей у нас есть особый бонус, который обеспечит вам уверенный старт в вашей карьере.

😶Зарегистрироваться на бесплатный вебинар

Читать полностью…

Data Science. SQL hub

Вебинар: Как защитить ИТ-инфраструктуру от кибератак​. Комплексный подход

📅 Дата: 19 августа 2025г
🕙 Время: 11:00

Можно ли на 100% защитить бизнес от киберугроз? Как минимизировать потери бизнеса, если атака уже произошла?

Две из трех российских компаний можно взломать менее чем за сутки, при этом наиболее уязвимы предприятия из сферы торговли, обрабатывающей промышленности, а также, как ни странно, информации и связи. Атаки способны нанести серьезный урон бизнесу вплоть до его закрытия. Неготовность компании, инфраструктуры и сотрудников к встрече с киберугрозами значительно упрощает работу хакеров. ​

Приглашаем руководителей и специалистов ИТ и ИБ подразделений поговорить о том, как подготовить ИТ-инфраструктуру компании и сотрудников к кибератакам.​

📋 Программа:

⚡️ Самые актуальные киберугрозы сегодня и риски для бизнеса​
⚡️ Организация защиты – чек-лист для руководителя
⚡️ Обеспечение устойчивости ИТ-инфраструктуры
⚡️ Бэкап данных и приложений: сценарии применения ​

ЗАРЕГИСТРИРОВАТЬСЯ

Читать полностью…

Data Science. SQL hub

Приглашаем на ежегодный хакатон от The Experts: School of Analytics!

Зарегистрированные участники уже получили задание и приступили к работе — но у вас всё ещё есть шанс присоединиться и побороться за место в финале!

👉 Задание хакатона
Участникам хакатона предстоит проанализировать данные A/B-теста нового рекомендательного алгоритма в музыкальном стриминговом сервисе, рассчитать ключевые метрики, проверить гипотезу о его эффективности и подготовить рекомендации о внедрении.

Почему стоит участвовать?
- Преимущества при поступлении в School of Analytics
- Возможность попасть на годовую программу на трек Top Talents 2025/26 со скидкой до 94%
- Доступ к fast track на позиции в компаниях
- Скидки на экспресс-курсы и специальные условия на дополнительные программы

Если хотите проверить свои силы — регистрируйтесь по ссылке, времени осталось немного!

А если вам интересны количественные финансы, статистический анализ, машинное обучение и риск-менеджмент открыта регистрация на хакатон School of Quants. Все подробности и форма регистрации доступны по ссылке.

Читать полностью…

Data Science. SQL hub

Летняя школа по аналитике, Data Science и Data Engineering

Центр непрерывного образования ФКН НИУ ВШЭ открывает регистрацию на летнюю школу «IT-сеанс: погружение в мир данных». Вас ждут выступления спикеров из таких компаний, как: Яндекс, Т-Банк, Ozon Tech, МТС Web Services, Альфа-Банк, X5 Tech, Magnit Tech, Авито и Вкусно — и точка.

Приглашаем всех, кто хочет разобраться:
〰️〰️〰️〰️〰️〰️
Зачем переходить в IT:
🟣Как данные меняют бизнес-процессы и какие роли в этом играют аналитики, дата-сайентисты и инженеры данных?
🟣Какие тренды в Al и Big Data формируют будущее технологий и компаний?

Как построить карьеру в аналитике, в Data Science и в Data Engineering:
🟣Какие навыки являются востребованными для каждого из трех карьерных путей и где их прокачать?
🟣Можно ли перейти в сферу данных с непрофильным образованием?
🟣На что смотрят HR и технические интервьюеры?

Как аналитика, Data Science и Data Engineering применяются в разных индустриях:
🟣Какие задачи решают аналитики, дата-сайентисты и инженеры данных в банковской, телеком- и ритейл-отраслях?
🟣Какие инструменты и технологии входят в рабочий стек специалистов в ритейле, банках и digital-сервисах?

Школа подойдет как тем, кто только решил освоить новую профессию, так и начинающим специалистам.

Когда: 21 августа в онлайн-формате, 23 августа — очно.
Где: Центр Культур НИУ ВШЭ, г. Москва, Покровский бульвар, 11.

📁Участие бесплатное для всех желающих, требуется регистрация: по ссылке 📍

Читать полностью…

Data Science. SQL hub

📦 C++ обертка для SQLite с расширенными возможностями ⚙️

Библиотека boost_sqlite предоставляет удобный интерфейс для работы с SQLite в C++. Она поддерживает типизированные запросы, подготовленные выражения, функции на основе JSON и пользовательские функции. Библиотека не скрывает C-API SQLite, а дополняет его.

🚀Основные моменты:
- Типизированные запросы и подготовленные выражения
- Поддержка JSON и пользовательских функций
- Виртуальные таблицы и хуки событий
- Легкая интеграция с существующими проектами

@sqlhub

Читать полностью…

Data Science. SQL hub

💡 SQL: поиск уникальных значений с COUNT(DISTINCT)

Хотите посчитать количество уникальных элементов по каждому пользователю?
Не нужно подзапросов — используйте COUNT(DISTINCT ...) прямо в выборке.


SELECT
user_id,
COUNT(DISTINCT product_id) AS unique_products,
COUNT(DISTINCT category) AS unique_categories
FROM purchases
GROUP BY user_id;


🔎 В одном запросе можно узнать, сколько разных товаров и категорий купил каждый пользователь.
Это упрощает аналитику и заменяет сложные вложенные запросы.

@sqlhub

Читать полностью…

Data Science. SQL hub

⚡️Вчера команда VK собрала буквально всю RecSys-тусовку. Судя по ленте, на ивенте было стильно и глитчово

Это первая встреча AI VK & Pro. На ней рассказали о будущем рекомендаций, о том, как строят единую Discovery-платформу для рекомендательных систем во всех продуктах VK и еще много всего полезного

Успели всё: отыграть DJ-сеты, эффективно понетворкать, был даже турнир по су-е-фа

Читать полностью…

Data Science. SQL hub

❌ Классический поиск по ключевым словам даёт ограниченные результаты.

Нашёл только одно совпадение: "Machine Learning Overview".

✅ А вот pgvector ищет по смыслу и находит связанные концепции.
Пример запроса возвращает 5 релевантных документов:
– Machine Learning Overview
– Data Mining Basics
– Introduction to AI
– Deep Learning Guide

Семантический поиск > ключевого 🔥

Читать полностью…

Data Science. SQL hub

📚🎮 SQL + Покемоны = Querymon!

Энтузиасты сделали игру, которая превращает изучение баз данных в настоящее приключение.

✨ С нуля — начнёте с простых таблиц и базовых запросов, сложность растёт постепенно.
🔎 Освоите SELECT, FROM, WHERE, фильтры LIKE, BETWEEN, IN и функции sum(), count(), avg().
🎯 Геймплей — сотни миссий, где, чтобы пройти дальше, нужно правильно писать SQL-запросы.

SQL ещё никогда не был таким весёлым: учиться теперь так же увлекательно, как ловить покемонов.
И самое приятное — игра полностью бесплатная.

👉 Попробовать можно здесь.

Читать полностью…

Data Science. SQL hub

🚀 Jupyter Agent 2

Этот агент умеет:
📂 Загружать данные
💻 Запускать код
📊 Строить графики прямо в Jupyter — быстрее, чем вы успеете прокрутить экран!

🤖 Основан на движке Qwen3-Coder
⚡️ Работает на Cerebras
⚙️ Запускается в E2B
↕️ Поддерживает загрузку файлов

👉 Попробовать можно здесь: https://hf.co/spaces/lvwerra/jupyter-agent-2

@sqlhub

Читать полностью…

Data Science. SQL hub

🌲 Datahike — персистентная база данных на основе Datalog. Это локальная база данных с поддержкой временных запросов и историчностью данных, совместимая с подмножеством API Datomic.

Интрумент используется в проверенных решениях: ядра запросов из DataScript и устойчивой структуры данных hitchhiker-tree. Проект подходит для средних по размеру приложений, где важна простота развертывания и открытая лицензия.

🤖 GitHub

@sqlhub

Читать полностью…

Data Science. SQL hub

Где вы окажетесь завтра, зависит от того, что вы изучаете сегодня. PostgreSQL — инструмент, который ищут компании, а грамотных специалистов по нему все еще немного.

Почему именно PostgreSQL? Потому что это не просто база данных, а сердце ваших проектов. Если вы администратор БД, разработчик, DevOps или администратор Linux, этот курс — ваш апгрейд.

Мы научим настраивать кластеры, оптимизировать производительность, разбираться с блокировками и решать задачи работы с большими объемами данных. А также живые лекции, практические задания и диплом, который признают лидеры рынка. Учитесь у практиков, которые знают, как решать реальные задачи, и получите навыки, за которые платят топовые компании.

Присоединяйтесь к курсу сейчас и начните свой путь к высокооплачиваемой карьере! Оставить заявку на курс и получить скидку: https://otus.pw/yEz4/?erid=2W5zFHAFsn8

Реклама. ООО "ОТУС ОНЛАЙН-ОБРАЗОВАНИЕ". ИНН 9705100963.

Читать полностью…

Data Science. SQL hub

🗿 Монолит на 930 эндпоинтов: лечим по шагам

С монолитом и 4+ ТБ данных можно работать! Доказано Яндекс Едой. Ребята применили классические методы для оптимизации запросов и перераспределения нагрузки, добавив к этому свой TableSwitcher для миграции данных. Базовое + новое = улучшенная производительность.


Реклама. ООО «ЯНДЕКС», ИНН 7736207543

Читать полностью…

Data Science. SQL hub

📊 Из PDF в DataFrame за пару строк кода

Работаете с финансовыми отчётами или любыми табличными данными в PDF?
С библиотекой docling это становится максимально просто.

Большинство инструментов для работы с PDF заставляют собирать пайплайн вручную:
одна библиотека для извлечения текста, другая для парсинга, третья для чанкинга.

Docling закрывает весь процесс — от сырых PDF до структурированных и готовых к поиску данных — в одном решении.

📌 Преимущества Docling:
🔹 Поддержка PDF, DOCX, PPTX, HTML и изображений
🔹 AI-модель TableFormer для понимания сложных таблиц
🔹 Vision-модели для OCR и image-to-text
🔹 Простой экспорт в pandas DataFrame, JSON и Markdown

Пример: конвертируем PDF с отчётом о доходах и сразу получаем pandas DataFrame 👇


from docling.document_converter import DocumentConverter

converter = DocumentConverter()
result = converter.convert("financial_report.pdf")

for table in result.document.tables:
df = table.export_to_dataframe()


📌 Github

@sqlhub

#AI #RAG #Docling #DataEngineering #PDF

Читать полностью…

Data Science. SQL hub

💡 Полезный хинт для Oracle SQL — использование TRUNC с датами для фильтрации и агрегации

В Oracle функция `TRUNC(date, 'fmt')` обрезает дату до заданного формата, обнуляя менее значимые части (часы, минуты, секунды и т.д.). Это помогает:
- фильтровать данные по дням, месяцам, годам, неделям, кварталам,
- делать группировки без сложных выражений,
- избавляться от ошибок, когда время мешает сравнению дат.

📌 Форматы:
- 'DD' — начало дня (по умолчанию)
- 'MM' — первый день месяца
- 'YYYY' — первый день года
- 'IW' — начало ISO-недели
- 'Q' — первый день квартала

📍 Примеры:

- Все сделки за сегодня


select *
from trades
where trunc(ts) = trunc(sysdate);


- Группировка по месяцам

select trunc(ts, 'MM') as month_start, sum(price) as total
from trades
group by trunc(ts, 'MM')
order by month_start;



-- Данные за текущий квартал
select *
from trades
where trunc(ts, 'Q') = trunc(sysdate, 'Q');


⚡ Плюсы:
- Удобно в чтении и написании
- Убирает проблемы с «лишними» часами и минутами в датах
- Работает напрямую с типом DATE без лишних кастов

@sqlhub

Читать полностью…

Data Science. SQL hub

🧩 Продвинутая задача по SQL (Oracle): найти «бычьи серии» продаж и момент разворота

Задача
Есть таблица продаж по дням:

sales(day_date DATE, customer_id NUMBER, amount NUMBER)

Нужно для каждого клиента найти интервалы из не меньше 3 подряд идущих дней, где сумма amount строго возрастает каждый день, а на следующий день после интервала происходит разворот вниз (т.е. amount меньше, чем в последний день серии). Для каждого такого интервала вернуть:
- customer_id
- start_date, end_date серии
- length (длина серии в днях)
- last_amount (сумма в последний день серии)
- drop_amount (сумма в день разворота)
- drop_pct (процент падения относительно last_amount)

Решение (Oracle 12c+): используем MATCH_RECOGNIZE


SELECT *
FROM sales
MATCH_RECOGNIZE (
PARTITION BY customer_id
ORDER BY day_date
MEASURES
FIRST(day_date) AS start_date,
LAST(day_date) AS end_date,
COUNT(A.*) AS length,
LAST(amount) AS last_amount,
NEXT(amount) AS drop_amount,
ROUND( (LAST(amount) - NEXT(amount)) / NULLIF(LAST(amount),0) * 100, 2 ) AS drop_pct
ONE ROW PER MATCH
AFTER MATCH SKIP PAST LAST ROW
PATTERN (A{3,} D)
DEFINE
A AS ( PREV(amount) IS NULL OR amount > PREV(amount) ),
D AS amount < PREV(amount)
);


Пояснение
- PATTERN (A{3,} D) — ищем подпоследовательность из минимум трёх строго возрастающих дней A, за которой сразу идёт день падения D.
- DEFINE A — рост относительно предыдущего дня в группе клиента.
- DEFINE D — падение относительно предыдущего дня (последнего A).
- MEASURES — извлекаем границы серии и метрики, NEXT(amount) берёт сумму в день разворота.
- AFTER MATCH SKIP PAST LAST ROW — не пересекаем серии.

Бонус: защита от «лестниц» с пропусками дат
Если в данных бывают пропуски дней, а вам нужны подряд идущие даты, добавьте проверку календарной последовательности:


DEFINE
A AS ( (PREV(amount) IS NULL OR amount > PREV(amount))
AND (PREV(day_date) IS NULL OR day_date = PREV(day_date) + 1) ),
D AS ( amount < PREV(amount) AND day_date = PREV(day_date) + 1 )


Зачем так делать
MATCH_RECOGNIZE — мощный инструмент Oracle для поиска сложных паттернов по времени (распознавание трендов, разрывов, «голова-плечи», аномалий). Он заменяет громоздкие CTE с аналитиками и делает запрос короче, быстрее и точнее при работе с последовательностями.

@sqlhub

Читать полностью…

Data Science. SQL hub

🔌 pREST (PostgreSQL REST) — проект, предлагающий готовое решение для создания RESTful API поверх PostgreSQL. Этот инструмент написан на Go и позволяет быстро развернуть высокопроизводительный API-сервер без сложной настройки. Поддержка начинается с PostgreSQL 9.5, что делает его совместимым с большинством существующих баз данных.

Проект особенно удобен для разработчиков, которым нужно быстро создать API с минимальными затратами. Он поддерживает SQL-запросы через REST-эндпоинты, аутентификацию и кастомные маршруты. Развернуть pREST можно даже в один клик, например, на Heroku.

🤖 GitHub

@sqlhub

Читать полностью…

Data Science. SQL hub

🚀 RisingLight — образовательная OLAP-база данных. Этот проект разрабатывается как учебная реализация OLAP-системы с поддержкой SQL-запросов, включая выполнение TPC-H тестов.

Для тех, кто хочет заглянуть под капот аналитических баз данных, RisingLight предлагает отличную возможность изучить их устройство на практике. Хотя проект пока не готов для production, он уже даёт представление о ключевых компонентах СУБД: от парсера запросов до исполнителя. Сообщество активно развивается: есть Discord, Telegram и даже WeChat-чат для обсуждения. Авторы приветствуют вклад новичков и предлагают список "good first issues" для первых PR.

🤖 GitHub

@sqlhub

Читать полностью…

Data Science. SQL hub

⚡️ Open-source инструмент для просмотра CSV, JSON, Excel и других таблиц прямо в терминале — без потери форматирования, аккуратно и читабельно.

🔥 Что умеет:
— Встроенный SQL-движок: фильтры, джойны и анализ прямо в терминале;
— Vim-подобные хоткеи (для фанатов, да 😁);
— Быстрый поиск, работа с несколькими таблицами, поддержка тем (Monokai, Nord и др.).

https://github.com/shshemi/tabiew

Читать полностью…
Subscribe to a channel