У меня есть представление. Хотел проверить, какой тип SQL может помочь определить список всех представлений и хранимую процедуру, использующую его.
Например, Представление A используется в представлении B, представлении C и хранимой процедуре D. Есть ли какая-либо схема метаданных, которая может помочь в написании такого запроса, где мы можем отслеживать все зависимые объекты определенного объекта в BigQuery. Пожалуйста помогите.
Например, Представление A используется в представлении B, представлении C и хранимой процедуре D. Есть ли какая-либо схема метаданных, которая может помочь в написании такого запроса, где мы можем отслеживать все зависимые объекты определенного объекта в BigQuery. Пожалуйста помогите.
Вы можете запустить следующий запрос, который выведет список всех представлений, это можно сделать на основе отдельного набора данных. Конечно, если у вас есть набор наборов данных, вы можете создать один запрос UNION ALL для каждого набора данных, чтобы объединить результаты.
SELECT * FROM dataset_name.INFORMATION_SCHEMA.VIEWS WHERE
REGEXP_CONTAINS(view_definition, 'dataset_name.table_name')
Замена dataset_name
и table_name
в приведенном выше запросе.
view_definition
в таблице схемы содержит фактический код SQL для создания представления. Таким образом, мы, по сути, просто ищем в этом поле имя таблицы, то же самое будет работать, если вы ищете представление, используемое в представлении.
Привет @Mohammad, Если вы найдете мой ответ полезным, рассмотрите вопрос о том, чтобы проголосовать и принять его. Если нет, дайте мне знать, чтобы ответ можно было улучшить.