已知一个字段a,想在数据库mn里面找到,哪几张表有这个字段a,请问这个SQL要怎么写呢???
是否还可以进行模糊查询呢?例如想找到有含有btn的字段(就像这样的btna,btnb,btnc。。。这样的字段)的表名呢?
代码如下:
SELECT DISTINCT TABLE_NAME
FROM INFORMATION_SCHEMA.COLUMNS
WHERE COLUMN_NAME like '%btn%'
AND TABLE_SCHEMA='YourDatabaseName';
INFORMATION_SCHEMA.COLUMNS 是系统表,查询它和查询普通表的语法一样。
用心回答每个问题,如果有帮助,请采纳答案好吗,非常感谢~~。
mysql :
use information_schema;
select * from columns where column_name LIKE 'btn%' ;
这个需求有点奇葩,直到了字段还不知道表名吗
你别说 还真有这个情况
SELECT table_name FROM information_schema.columns
WHERE TABLE_SCHEMA='mn' AND COLUMN_NAME='a';
SELECT table_name from information_schema.columns
WHERE TABLE_SCHEMA='mn' AND COLUMN_NAME LIKE 'btn_';
这个算完美吧?