13

如何列出包含给定列名的所有表?我正在使用 Mysql 版本 4.1.13-nt-log。我知道小于 5 的版本没有 information_scheme 数据库。

4

4 回答 4

31

查找列名与搜索词类似的所有表和列:

SELECT DISTINCT TABLE_NAME, COLUMN_NAME 
FROM INFORMATION_SCHEMA.COLUMNS
WHERE COLUMN_NAME LIKE '%partial_column_name%'
    AND TABLE_SCHEMA='YourDatabase';
于 2012-05-27T08:09:34.597 回答
0

尝试这个:

mysqldump -u root -p –all-databases –single-transaction > all.sql

然后在带有 find 的文本编辑器中以老式方式进行搜索


还发现了这个……看起来很有希望,但我不确定你有多大的野心

http://mike.kruckenberg.com/presentations/Creating_INFORMATION_SCHEMA.pdf

于 2010-03-07T15:45:53.710 回答
0

更容易

SELECT DISTINCT TABLE_NAME FROM your_schema.columns WHERE column_name = 'your_column_name';
于 2017-10-29T05:04:51.977 回答
-3
select table_name,column_name,data_type,data_length 
from user_tab_columns 
where column_name LIKE 'WHATEVER_U_WANT'
;
于 2013-10-30T04:56:44.500 回答