如何在MySQL中查找包含两个特定列的所有表?
要找到两个特定的列名称,请使用information_schema.columns。在这里,我使用Id代替columnA,使用Name代替columnB-
mysql> select table_name as TableNameFromWebDatabase-> from information_schema.columns
-> where column_name IN ('Id', 'Name')
-> group by table_name
-> having count(*) = 3;
这将产生以下输出。以下是具有ID和Name列的表-
+--------------------------+| TableNameFromWebDatabase |
+--------------------------+
| student |
| distinctdemo |
| secondtable |
| groupconcatenatedemo |
| indemo |
| ifnulldemo |
| demotable211 |
| demotable212 |
| demotable223 |
| demotable233 |
| demotable251 |
| demotable255 |
+--------------------------+
12 rows in set (0.25 sec)
为了证明这一点,让我们检查其中一张表的描述。以下是查询-
mysql> desc demotable233;
这将产生以下输出。在这里,您可以看到我们有Int和Name列-
+-------+-------------+------+-----+---------+----------------+| Field | Type | Null | Key | Default | Extra |
+-------+-------------+------+-----+---------+----------------+
| Id | int(11) | NO | PRI | NULL | auto_increment |
| Name | varchar(20) | YES | | NULL | |
+-------+-------------+------+-----+---------+----------------+
2 rows in set (0.00 sec)
以上是 如何在MySQL中查找包含两个特定列的所有表? 的全部内容, 来源链接: utcz.com/z/335271.html