查询 MySQL 数据库中以 'a_table' 开头的无 'uk_1' 索引的表
可以通过以下 SQL 查询语句来查询 MySQL 数据库中以 'a_table' 开头的没有 'uk_1' 索引的表的库名和表名:
SELECT TABLE_SCHEMA, TABLE_NAME
FROM INFORMATION_SCHEMA.TABLES
WHERE TABLE_NAME LIKE 'a_table%'
AND TABLE_SCHEMA NOT IN (
SELECT DISTINCT TABLE_SCHEMA
FROM INFORMATION_SCHEMA.STATISTICS
WHERE INDEX_NAME = 'uk_1'
)
上述查询语句使用了 INFORMATION_SCHEMA 系统数据库中的 TABLES 和 STATISTICS 表来获取库名和表名的信息。TABLES 表用于获取所有表的信息,STATISTICS 表用于获取索引的信息。通过使用子查询,我们可以从 STATISTICS 表中筛选出具有 'uk_1' 索引的库名,然后使用 NOT IN 子句来排除这些库名。最后,使用 LIKE 运算符来匹配以 'a_table' 开头的表名。
原文地址: https://www.cveoy.top/t/topic/lNik 著作权归作者所有。请勿转载和采集!