如何在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

回到顶部