Как найти все записи, относящиеся к определенной заданной записи по внешним ключам?Как найти все записи, относящиеся к определенной записи с помощью внешних ключей
Очевидно, postgres выполняют эту работу при заполнении UPDATE или DELETE действий, но мне нужно выполнить произвольное действие.
Я думаю, что отношение «pg_constraint» может быть проанализировано, но, возможно, существует более простой метод?
Для простоты мы знаем атрибут, который записывает см - «ID» = 7 и отношение - «продукт», так что более конкретно:
Как найти все записи (во всех отношениях), которые ссылаются внешние ключи для записи «продукта». «id» = 7?
Это немного FAQ, вы искали предварительные ответы? как найти все строки, которые ссылаются на данный идентификатор и т. д. –
@CraigRinger Мне нужно гораздо больше, чем найти все строки, которые относятся к указанному ID Мне нужно: 1. Найдите все отношения, имеющие внешние ключи, которые относятся к данному столбцу (ID) данного отношения («продукт») 2. Найдите все строки во всех результатах с шага 1. Это указано в ссылочном значении столбца (7) – kakabomba
. Я не уверен, что я вижу, насколько это существенно отличается от обычного вопросы по поиску db-wide. В любом случае принцип один и тот же - идентифицируйте отношения FK от 'INFORMATION_SCHEMA', затем для каждого использования PL/PgSQL для выполнения динамического запроса с помощью' EXECUTE' и 'format (...)' –