title

text

Брюс Момжиан
Брюс Момжиан EnterpriseDB Senior Database Architect
14:00 05 февраля
180 мин

Изучаем CTE и оконные функции

От разработчиков часто требуются результаты, которые трудно получить обычными SQL-запросами. К счастью, стандартом SQL предусмотрены мощные средства - общие табличные выражения (CTE) и оконные функции, который весьма расширяют круг возможного.

SQL является декларативным языком, что означает, что пользователь только формирует запрос, с база данных определяет, как его следует оптимально исполнять. CTE позволяют запросам быть более императивными, дают возможность организовать циклы и обработку иерархических структур, что обычно делается только в императивных языках.

Обычные SQL-запросы возвращают наборы строк, в которых одна строка не зависит от других. Оконные функции позволяют добавлять в запрос поля, значения которых зависят от других строк.

Этот мастер-класс поможет прикладным разработчикам в использовании CTE, что позволит перенести часть логики из приложения в SQL-код, и разъяснит возможности оконных функций и особенности их использования.

Видео

Часть I «Programming the SQL Way with CTE»


Часть II «Postgres Window Magic»


слайды слайды

Другие доклады

  • Иван Панченко
    Иван Панченко Postgres Professional рзаместитель генерального директора
    90 мин

    Программирование серверных процедур на языках PL/Perl, PL/Python, PL/v8

    Мастер-класс покажет особенности серверного программирования на указанных языках. Будут рассмотрены примеры и произведено сравнение данных языков и их возможностей в серверной среде PostgreSQL для различных практических задач.

  • Дмитрий Кремер
    Дмитрий Кремер МИА "Россия Сегодня" Администратор баз данных
    22 мин

    Особенности мониторинга и траблшутинга высоконагруженной БД PostgreSQL

    База данных - один из ключевых компонентов в любой информационной системе, требующий мониторинга множества метрик. В докладе освещены примеры и подходы мониторинга и анализа производительности PostgreSQL, которые позволяют минимизировать нагрузку на сервер баз данных со стороны системы мониторинга и сбора данных для последующего анализа проблемных ситуаций:

    • Квантовые эффекты или как наблюдатель влияет на наблюдаемую систему
    • Особенности сбора метрик при мониторинге БД с помощю Zabbix
    • Сбор данных для аналитики и визуализации запросов PostgreSQL с помощью rsyslog + kafka + clickhouse + grafana.
    • Инструменты оперативного анализа лог-файлов БД

  • Николай Рыжиков
    Николай Рыжиков Health Samurai CTO
    45 мин

    Использование PostgreSQL и Сlojure для разработки приложений, ориентированных на работу с базами данных

    Если честно взглянуть на большинство наших бизнес-приложений, то они через провод собирают данные в базу и раздают их в обратном направлении. Что, если не пытаться воздвигать стену абстракций между приложением и базой данных (ORM), а постараться использовать их симбиоз - сильные стороны и индивидуальные особенности.

    Я расскажу как мы используем postgresql и clojure для создания data intensive приложений для медицины.

    • functional relational programming
    • jsonb для моделирования сложной предметной области
    • функциональные индексы и расширение json-knife для поиска в jsonb
    • реализация graphql на postgres
    • logical replication для построения реактивных интеграций
    • асинхронный JDBC-free коннектор к postgresql на netty

  • Christopher Travers
    Christopher Travers DeliveryHero SE Principle Engineer
    45 мин

    PostgreSQL на 20TB и выше

    В последние шесть месяцев я работал с массивным OLAP окружением, охватывающим порядка 400TB данных. Приходите и узнайте, как мы заставили это все работать, с какими трудностями сталкивались и какие навыки нам потребовались.

    Этот доклад будет иметь мало общего с докладом про 10TB и выше, так как среды данных значительно отличаются. Мы рассмотрим эффективность аналитики, выравнивание данных, причины для разработки расширений на С, перемещение данных между серверами в нескольких центрах обработки данных.