2011-05-06 91 views
1

我有一個擁有90多個表的數據庫,我想知道它們中哪些具有相同的兩個特定列。我正在尋找的代碼將是這樣的:MySQL,搜索數據庫並告訴哪些表包含兩個特定列?

SHOW TABLES IN `database` 
     WHERE column = 'columnA' 
     AND column = 'columnB';` 

這甚至有可能嗎?

+2

時間來了解[INFORMATION_SCHEMA](http://dev.mysql.com/doc/refman/5.0/en/information-schema.html)。 :) – 2011-05-06 19:21:15

回答

5

這將爲您提供具有兩列中任一列的所有表格,您可以通過它們瀏覽以找到所需的內容。

select * 
    from information_schema.columns 
    where column_name in ('columnA', 'columnB') 
order by table_name, column_Name 
+0

+1:擊敗我:http://dev.mysql.com/doc/refman/5.0/en/columns-table.html – 2011-05-06 19:22:17

+0

感謝您的解決方案和鏈接。 – 2011-05-06 20:24:17

0
SELECT TABLE_SCHEMA AS `schema`, TABLE_NAME AS `table`, COLUMN_NAME AS `column` 
FROM `information_schema`.`COLUMNS` 
WHERE COLUMN_NAME IN('column1','column2') 
相關問題