Как pg_query переписывает, депарсит и форматирует любой валидный Postgres-запрос (PConf.dev 2026)
PostgreSQL Development Conference
0:00 / 0:00
Как pg_query переписывает, депарсит и форматирует любой валидный Postgres-запрос (PConf.dev 2026)
375 просмотров · 2 месяца назад
PostgreSQL Development Conference
2,02 тыс. подписчиков
375 просмотров · 2 месяца назад
Доклад Кейко Оды и Лукаса Фиттла на PGConf.dev 2026 (https://2026.pgconf.dev)
В этом докладе мы подробно расскажем о том, как мы расширили библиотеку pg_query, парсер Postgres, чтобы обеспечить новые возможности для переписывания запросов Postgres.
Переписывание запросов стало возможным благодаря двум компонентам: представлению AST на основе Protobuf, полученному из необработанных деревьев разбора Postgres, и языковым привязкам, которые предоставляют удобные функции для обхода и изменения дерева.
Мы также обсудим конкретные примеры, где это полезно, например, для преобразования некоторых запросов OR в UNION или материализации сканирования таблицы.
Вы также узнаете подробности о депарсере pg_query, который поддерживает полный спектр синтаксиса запросов Postgres (включая DDL!) и имеет дополнительный режим форматирования, который может красиво выводить сгенерированный запрос.
https://2026.pgconf.dev/session/648
🎬 Смотрите больше видео с PGConf.dev 2026 на • PGConf.dev 2026
Присоединяйтесь к нам в Монреале на PConf.dev 2027 https://2027.pgconf.dev
Свяжитесь с нами:
Mastodon: https://mastodon.social/@pgconfdev
Веб: https://2026.pgconf.dev
#postgresql #PGConfDev