Спасибо Егору Рогову и команде Postgres Professional за данное видео. Очень важная тема "Составные типы". Также спасибо, что объединяете видеоролики в обучающий плейлист. По возможности было бы очень здорово, если в видеороликах на ЮТУБ появились тайминги (временные метки) с ключевыми словами. Поисковые алгоритмы ЮТУБ иногда подтягивают фрагменты из видео, основываясь на названии временной метки. А так как вы раскрываете достаточно много нюансов из PostgreSQL, то видео могут лучше показываться в ЮТУБ-поиске. Кстати, эти фрагменты уже активно работают и в самом Google поиске на странице результатов поисковой выдачи. Для развития сообщества ещё хотелось бы видеть короткие ролики на подобии "Таблица - это ТИП ДАННЫХ". Просто очень долго не мог понять как таким табличным типом можно пользоваться в выражениях RETURNS в функциях, когда количество столбцом может меняться в зависимости от изменения таблицы. Это не очевидно. Хорошего Вам дня! Успехов. Здоровья! Ваш труд важен и полезен обществу.
Так вроде во вьюхах можно использовать агрегатные функции и план запроса использует вьюху как часть запроса (или как CTE), а в лекции ранее я видел что если в функции есть group by и т. п., то она не будет раскрыта.
В представлении можно использовать какие угодно функции, с этим вопросов нет. Но здесь, видимо, речь о том, когда запрос внутри функции подставляется в основной запрос (то, что называется inlining). Это совсем другое дело, там есть ограничения.
Добрый день. Спасибо за курс! Возник интересный вопрос по составным типам. Хотелось бы реализовать следующую структуру: создаем составной тип с двумя полями (предположим как в примере данного видео) поле amount и code, Далее этот тип используем в таблице, но при этом как массив (это позволяется). Ограничений целостности в составном типе нет, а у домена есть (NOT NULL, DEFAULT, CHECK). Поле code в составном типе хотелось бы иметь ссылку на допустимые значения из таблицы( не ENUM). То есть поле составного типа ссылается на таблицу допустимых значений, а составной тип используется в другой таблице как массив. Возможно ли так реализовать? Спасибо.
@@PostgresProfessional Добрый день. Да, все верно, именно так. Попробовал использовать таблицу с внешним ключом и эту таблицу использовать как тип поля (массив) в другой таблице, ведь таблица и есть тоже составной тип. Но ссылочной целостности все равно нет.Видимо по той же причине. Тогда либо функцию либо валидация на клиенте и верить ей или и то и то .Благодарю за ответ!
Спасибо Егору Рогову и команде Postgres Professional за данное видео. Очень важная тема "Составные типы". Также спасибо, что объединяете видеоролики в обучающий плейлист.
По возможности было бы очень здорово, если в видеороликах на ЮТУБ появились тайминги (временные метки) с ключевыми словами. Поисковые алгоритмы ЮТУБ иногда подтягивают фрагменты из видео, основываясь на названии временной метки. А так как вы раскрываете достаточно много нюансов из PostgreSQL, то видео могут лучше показываться в ЮТУБ-поиске. Кстати, эти фрагменты уже активно работают и в самом Google поиске на странице результатов поисковой выдачи.
Для развития сообщества ещё хотелось бы видеть короткие ролики на подобии "Таблица - это ТИП ДАННЫХ". Просто очень долго не мог понять как таким табличным типом можно пользоваться в выражениях RETURNS в функциях, когда количество столбцом может меняться в зависимости от изменения таблицы. Это не очевидно.
Хорошего Вам дня! Успехов. Здоровья! Ваш труд важен и полезен обществу.
Спасибо! Над метками подумаем.
Так вроде во вьюхах можно использовать агрегатные функции и план запроса использует вьюху как часть запроса (или как CTE), а в лекции ранее я видел что если в функции есть group by и т. п., то она не будет раскрыта.
В представлении можно использовать какие угодно функции, с этим вопросов нет.
Но здесь, видимо, речь о том, когда запрос внутри функции подставляется в основной запрос (то, что называется inlining). Это совсем другое дело, там есть ограничения.
Добрый день. Спасибо за курс! Возник интересный вопрос по составным типам. Хотелось бы реализовать следующую структуру: создаем составной тип с двумя полями (предположим как в примере данного видео) поле amount и code, Далее этот тип используем в таблице, но при этом как массив (это позволяется). Ограничений целостности в составном типе нет, а у домена есть (NOT NULL, DEFAULT, CHECK). Поле code в составном типе хотелось бы иметь ссылку на допустимые значения из таблицы( не ENUM). То есть поле составного типа ссылается на таблицу допустимых значений, а составной тип используется в другой таблице как массив. Возможно ли так реализовать? Спасибо.
То есть вы хотите сделать поле составного типа внешним ключом? Нет, так не получится.
@@PostgresProfessional Добрый день. Да, все верно, именно так. Попробовал использовать таблицу с внешним ключом и эту таблицу использовать как тип поля (массив) в другой таблице, ведь таблица и есть тоже составной тип. Но ссылочной целостности все равно нет.Видимо по той же причине. Тогда либо функцию либо валидация на клиенте и верить ей или и то и то .Благодарю за ответ!