我正在尝试构建一个mysql查询(我想在phpMyAdmin中使用它),以获取表名中包含"user“或”员“的所有表的行数。但是,我不想问一个数据库,我想在所有的dbs上运行这个。因此,我希望有一个具有列的表: DB名称、表名、行的Numer。
任何技巧,以实现这一点,将是非常感谢!
发布于 2018-03-21 12:34:38
您不需要查询所有的数据库,但无论如何您不能查询,您只需要查询一个名为information_schema的数据库,它包含有关数据库的所有元数据(表结构等)。
下面是您想要的查询:
SELECT TABLE_SCHEMA, TABLE_NAME, TABLE_ROWS
FROM information_schema.TABLES
WHERE
TABLE_NAME LIKE '%user%'
OR TABLE_NAME LIKE '%member%';备注:
information_schema的许可。但是,如果存在无法访问的表(因为您没有权限),您将不会在结果中看到它。information_schema是用小写写的)。由于某些原因,这与文档和大多数技术文章(INFORMATION_SCHEMA)使用的约定不同。就用你喜欢的练习吧。https://dba.stackexchange.com/questions/201880
复制相似问题