sys.dm_sql_referenced_entities
オブジェクトが依存しているテーブルとビューを選択するために使用できます。BooksOnlineの記事を参照してください。
このcteは、sys.dm_sql_referenced_entitiesの結果に表示されるビューからテーブルを再帰的に選択します。それはあなたのために働くはずです。SQLフィドルを参照してください
DECLARE @viewName sysname = 'dbo.V3'
;WITH cteViews AS(
SELECT
re.referenced_id
,o.type_desc
,SCHEMA_NAME(o.schema_id) AS [schema]
,o.name
FROM sys.dm_sql_referenced_entities (@viewName, 'OBJECT') re
JOIN sys.objects o ON re.referenced_id = o.object_id
UNION ALL
SELECT
viewTables.referenced_id
,viewTables.type_desc
,viewTables.[schema]
,viewTables.name
FROM cteViews cte
OUTER APPLY(
SELECT
re.referenced_id
,o.type_desc
,SCHEMA_NAME(o.schema_id) AS [schema]
,o.name
FROM sys.dm_sql_referenced_entities (cte.[schema] + '.' + cte.name, 'OBJECT') re
JOIN sys.objects o ON re.referenced_id = o.object_id
WHERE o.type_desc = 'USER_TABLE'
) AS viewTables
WHERE cte.type_desc = 'VIEW'
)
SELECT
[schema]
,name
FROM cteViews
WHERE type_desc <> 'VIEW'
ORDER BY name
SSMSには、オブジェクトの依存関係を表示できる機能もあります。オブジェクトエクスプローラーでビューを右クリックし、[依存関係の表示]を選択します。次に、ラジオボタン「「ビュー名」が依存するオブジェクト」を選択します。