列出包含列的SQL视图

时间:2013-09-24 13:20:27

标签: sql sql-server tsql

有人可以帮我列出所有带有列名的SQL“视图”吗?

我尝试过使用下面的查询,但我也只需要视图列。

select * from information_schema.view_column_usage

2 个答案:

答案 0 :(得分:0)

您希望以哪种格式显示结果?以下查询将列出系统上的所有视图及其引用的列。

SELECT 
    '[' + VIEW_SCHEMA + '].[' + VIEW_NAME + ']' as [View]
    ,'[' + TABLE_SCHEMA + '].[' + TABLE_NAME + '].[' + COLUMN_NAME + ']' as [Column]

FROM INFORMATION_SCHEMA.VIEW_COLUMN_USAGE
ORDER BY 1

答案 1 :(得分:0)

在此示例中,视图可被视为普通表。试试这个:

SELECT t.TABLE_SCHEMA, t.TABLE_NAME, c.COLUMN_NAME FROM INFORMATION_SCHEMA.TABLES t
JOIN INFORMATION_SCHEMA.COLUMNS c
ON t.TABLE_NAME = c.TABLE_NAME
WHERE t.TABLE_NAME IN (
SELECT table_name FROM INFORMATION_SCHEMA.VIEWS)