2016-03-18 31 views
9

我正在運行一個龐大的數據庫,有這麼多的表和表都有這麼多的列。如何從MySQL數據庫中搜索列名?

我的數據庫是MySQL,我必須搜索特定的列。

在MySQL中有沒有一種方法可以從數據庫中的所有表中搜索列名?

+1

如果您需要搜索列名稱,那麼表格設計很可能是錯誤的。你可以改變它,如果是這樣,你需要一個提示如何? –

+0

我發誓,我還沒有創建DB先生@juergend – Joomler

+0

@ lad2025 - 我有很多表在我的數據庫,我必須搜索一個特定的列,它真的很難去每個表和檢查列。如果這很容易,我沒有在這裏發佈我的問題:) – Joomler

回答

16

INFORMATION_SCHEMA COLUMNS Table

查詢

select table_name, column_name 
from information_schema.columns 
where column_name like '%search_keyword%'; -- change search_keyword accordingly 

檢索或者,如果你想搜索確切的列名則沒有必要的LIKE

where column_name = 'column_name_to_be_find'; 
+0

感謝@Ullas的快速回復,但我在我的數據庫中有很多表格,我必須搜索特定的列,並且很難去每個表格並檢查列名稱。 – Joomler

+0

@RishiVishwakarma:您無需爲每個表搜索列名稱。 – Wanderer

5

試試這個:

SELECT DISTINCT TABLE_NAME 
FROM INFORMATION_SCHEMA.COLUMNS 
WHERE COLUMN_NAME IN ('columnA','ColumnB') 
AND TABLE_SCHEMA='YourDatabase';