Mysql 返回列和表的保留值

Mysql 返回列和表的保留值,mysql,sql,Mysql,Sql,我可以编写一个查询来搜索数据库中具有特定列的表 SELECT * FROM INFORMATION_SCHEMA.COLUMNS WHERE COLUMN_NAME like '%A' 但我的问题是: 我可以在整个数据库中搜索列中的值吗? 因此,我不确定列的名称,也不确定DB表的名称,但我知道该值为“活动”是的,您可以。在这种情况下,您需要在获得表列表后准备动态查询,该列表由实际要查找的列组成 现在为创建一个光标 SELECT * FROM INFORMATION_SCHEMA.COLUMNS

我可以编写一个查询来搜索数据库中具有特定列的表

SELECT * FROM INFORMATION_SCHEMA.COLUMNS WHERE COLUMN_NAME like '%A'
但我的问题是:

我可以在整个数据库中搜索列中的值吗?
因此,我不确定列的名称,也不确定DB表的名称,但我知道该值为“活动”

是的,您可以。在这种情况下,您需要在获得表列表后准备动态查询,该列表由实际要查找的列组成

现在为创建一个光标

SELECT * FROM INFORMATION_SCHEMA.COLUMNS WHERE COLUMN_NAME like '%A'
使用上方光标循环下方

SET @s = CONCAT("select count(*) from [tablename] where [columnname] like ","'%SOMETHING%'");
PREPARE stmt FROM @s
execute stmt;
DEALLOCATE PREPARE stmt;

请看这个问题,它是SQL Server,但可能很有用: