如何使用IN运算符检查当前数据库之外的不同数据库中的MySQL表列表,并在结果集中包含表类型?
可以使用SHOW FULL TABLES语句实现。其语法如下:
语法
SHOW FULL TABLES IN db_name
这里**db_name**是要查看表列表的数据库名称。
示例
我们当前使用名为“query”的数据库,以下MySQL查询将显示名为mysql的数据库中的表列表及其类型。
mysql> SHOW FULL TABLES IN mysql; +---------------------------+------------+ | Tables_in_mysql | Table_type | +---------------------------+------------+ | arena | BASE TABLE | | arena1 | BASE TABLE | | columns_priv | BASE TABLE | | dates | VIEW | | dates1 | VIEW | | db | BASE TABLE | | digits | VIEW | | engine_cost | BASE TABLE | | event | BASE TABLE | | func | BASE TABLE | | general_log | BASE TABLE | | gtid_executed | BASE TABLE | | help_category | BASE TABLE | | help_keyword | BASE TABLE | | help_relation | BASE TABLE | | help_topic | BASE TABLE | | innodb_index_stats | BASE TABLE | | innodb_table_stats | BASE TABLE | | ndb_binlog_index | BASE TABLE | | numbers | VIEW | | plugin | BASE TABLE | | proc | BASE TABLE | | procs_priv | BASE TABLE | | proxies_priv | BASE TABLE | | server_cost | BASE TABLE | | servers | BASE TABLE | | slave_master_info | BASE TABLE | | slave_relay_log_info | BASE TABLE | | slave_worker_info | BASE TABLE | | slow_log | BASE TABLE | | tables_priv | BASE TABLE | | test_date | BASE TABLE | | time_zone | BASE TABLE | | time_zone_leap_second | BASE TABLE | | time_zone_name | BASE TABLE | | time_zone_transition | BASE TABLE | | time_zone_transition_type | BASE TABLE | | user | BASE TABLE | +---------------------------+------------+ 38 rows in set (0.01 sec)
广告