title

text

Брюс Момжиан
Брюс Момжиан EnterpriseDB Senior Database Architect
: декабря
180 мин

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

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

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

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

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

Видео

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


Часть II «Postgres Window Magic»


Слайды

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

  • Егор Рогов
    Егор Рогов Postgres Professional эксперт
    90 мин

    Мастер-класс: Больше индексов, хороших и разных

    "Не мог он GIN от SP-GiST-а, как мы ни бились, отличить", говорил классик. А вы можете? Этот мастер-класс посвящен индексам, которые хоть и не так часто используются, как обычное B-дерево, но могут сильно выручить в трудную минуту. Мы посмотрим, как устроены эти индексы и в каких случаях они могут быть успешно применены. Заодно поговорим и об особенностях индексного доступа в PostgreSQL. Чтобы провести время с пользой, от слушателей потребуется некоторое знакомство с PostgreSQL и умение читать планы несложных запросов.

    Материалы мастер-класса

    Резервную копию БД с демонстрационными данными можно скачать тут:

  • Михаил Балаян
    Михаил Балаян Acronis Chief Database Architect
    45 мин

    MVCC в картинках и когда длинные транзакции - это проблема

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

  • Виктор Егоров
    Виктор Егоров Data Egret DBA
    45 мин

    Сравнительный обзор архитектуры PostgreSQL и ORACLE

    Доклад рассмотрит следующие компоненты СУБД PostgreSQL, сравнивая архитектурные решения с СУБД ORACLE:

    1. Что представляет из себя экземпляр работающей базы, какие процессы присутствуют и за что они отвечают?
    2. Какими структурами оперирует база?
    3. Механизм отказоустойчивости.
    4. MVCC механизм и возможности восстановления базы.
    5. Хранение базы на физических носителях.

    Каждое из рассматриваемых решений будет оценено с точки зрения накопленного опыта работы в выбранных СУБД, удобства администрирования и доступных способов развития в будущем.

    Доклад будет интересен:

    • пользователям PostgreSQL, т.к. позволит взглянуть на другую СУБД и её особенности;
    • администраторам PostgreSQL, т.к. ORACLE предлагает большие административные возможности, которые могли бы быть реализованы и в Postgres;
    • разработчикам PostgreSQL, т.к. Postgres активно развивается и этот доклад может задать новые направления развития;
    • желающим перейти с ORACLE (или другой СУБД) на проекты с открытым исходным кодом, т.к. доклад продемонстрирует возможности открытой СУБД Postgres в сравнении с коммерческим продуктом, в котором Postgres выглядит очень достойно!

  • Дмитрий Павлов
    Дмитрий Павлов Arenadata Big Data solutions Senior Consultant
    45 мин

    Дрессируем Greenplum

    С необходимостью завести в корпоративном IT-ландшафте аналитическую СУБД сталкивается большинство компаний, чей бизнес так или иначе затрагивает информационные технологии. В докладе я расскажу о самых главных нюансах развёртывания и эксплуатации распределённой аналитической open-source СУБД, основанной на PostgreSQL - Greenplum, разберу типичные ошибки при её использовании, приведу best practices и обращу внимание на тонкие места.