从具有特定列的 MySQL 数据库(例如 xyz)中获取所有表?


假设我们有一个数据库“web”,我们需要获取所有具有特定列“StudentFirstName”的表。

为此,以下为查询 −

mysql> select myColumnName.table_name from
information_schema.columns myColumnName
where myColumnName.column_name = 'StudentFirstName' and table_schema='web';

这将产生以下输出 −

+---------------+
| TABLE_NAME    |
+---------------+
| demotable109  |
| demotable297  |
| demotable335  |
| demotable395  |
| demotable418  |
| demotable425  |
| demotable436  |
+---------------+
7 rows in set (0.14 sec)

因此,上述表的列名称之一为“StudentFirstName”。

让我们检查其中任何表的描述以查找列名“StudentFirstName” −

mysql> desc demotable297;

这将产生以下输出,显示其中一个列名为“StudentFirstName” −

+------------------+--------------+------+-----+---------+-------+
| Field            | Type         | Null | Key | Default | Extra |
+------------------+--------------+------+-----+---------+-------+
| StudentId        | int(11)      | YES  |     | NULL    |       |
| StudentFirstName | varchar(100) | YES  |     | NULL    |       |
| StudentLastName  | varchar(100) | YES  |     | NULL    |       |
+------------------+--------------+------+-----+---------+-------+
3 rows in set (0.01 sec)

更新于: 27-9-2019

175 查看

开启您的事业

完成课程以获得认证

开始学习
广告