2013-09-24 28 views
0

有人可以幫助我列出所有SQL「視圖」的列名?列出SQL視圖與列

我試過使用下面的查詢,但我也只需要列的意見。

select * from information_schema.view_column_usage 
+0

這裏你的問題到底是什麼,你的查詢看起來很好,列名可以在你的查詢的「COLUMN_NAME」列中找到。 – DrCopyPaste

回答

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 
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)