我尝试过这个查询:
SELECT t.TABLE_SCHEMA, t.TABLE_NAME, i.TABLE_ID, i.NAME
FROM information_schema.INNODB_TABLES i
INNER JOIN information_schema.TABLES t
ON (t.TABLE_SCHEMA + '/' + t.TABLE_NAME) = i.NAME
ORDER BY t.TABLE_SCHEMA, t.TABLE_NAME;
但它会创建一堆重复项。
编辑:需要使用 de CONCAT() 函数...
最佳答案
在 SQL 中使用 DISTINCT 函数将为您使用 SELECT 的每个变量提供唯一值。 在这里阅读更多相关信息: https://www.w3schools.com/sql/sql_distinct.asp
并回答您的问题:
SELECT DISTINCT t.TABLE_SCHEMA, t.TABLE_NAME, i.TABLE_ID, i.NAME
FROM information_schema.INNODB_TABLES i
INNER JOIN information_schema.TABLES t
ON (t.TABLE_SCHEMA + '/' + t.TABLE_NAME) = i.NAME
ORDER BY t.TABLE_SCHEMA, t.TABLE_NAME;
关于MySQL 在一个查询中选择 table_name、table_shema 和 table_id,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58978744/