2014-10-08 67 views
1

我有一個以舊方式命名的所有列的舊錶,這些名稱對別人沒有意義,但表描述包含列說明,如何可以選擇來自表格的所有數據,並結合列描述?從表中選擇具有列名稱和說明的數據SQL Server

BELOW更新:

爲了得到名稱和列描述

SELECT 
COLUMN_NAME AS Name, 
COLUMN_TEXT AS Description 
FROM 
[DB2-LINKED-SERVER].[BD2].QSYS2.SYSCOLUMNS 
WHERE 
TABLE_NAME = 'ITMHED' 

我:

Name  Description 
ITMNO  Item Number 
ITMNM  Item Name 
.... 800+ rows more 

然後,我有另一個查詢:

SELECT * FROM [DB2-LINKED-SERVER].[BD2].ITMHED 

這回我:

ITMNO  ITMNM   ...800+ more columns 
AB-001  Mountain Bike    .... 

我想什麼:

Item Number  Item Name  ...800+ more columns 
AB-001   Mountain Bike  ..... 

如果我只需要2-3列,我可以手動將其重命名,但有很多紀錄,我想讓用戶更易讀。我需要從中生成報告。

+0

重命名列或使用有用的名稱創建視圖。 – 2014-10-08 18:11:33

+0

我無法重命名列。這是一箇舊的IBM BD2數據庫,不知道它是否有視圖。 – triston 2014-10-08 18:13:44

+0

@triston爲什麼把它標記爲sql-server,如果它是DB2? – SchmitzIT 2014-10-08 18:19:18

回答

1
SELECT 
COLUMN_NAME AS Name + ' as '+ 
COLUMN_TEXT AS Description + ',' 
FROM 
[DB2-LINKED-SERVER].[BD2].QSYS2.SYSCOLUMNS 
WHERE 
TABLE_NAME = 'ITMHED' 

可能從該得到的輸出,然後將其插入到以下:

選擇(插入上述這裏的輸出)從[DB2-鏈接服務器] [BD2] .ITMHED

+0

但是有超過1000列需要描述。 – triston 2014-10-08 20:15:59

+0

是的,我已經有了從Select語句生成列名稱和描述到QSYS2.SYSCOLUMNS的代碼。但它們是列名稱的行和描述。我無法配置一種將表格鏈接到此列表的方法。 – triston 2014-10-08 20:26:47

+0

很酷。如果這回答你的第一個問題或幫助,真的很喜歡,如果你選擇它作爲答案 – Drew 2014-10-08 20:28:54

相關問題