数据库的差异

时间:2012-07-09 11:51:43

标签: mysql mysqldump

如何查询information_schema.tables以获取可用表的列表,这些表存在于一个DB中但不存在于另一个DB中,类似于diff但更合适。我只需要sql查询。

所以我的Db就像A,B,C,D一样,所有这些DB都应该有相同的表格,我该怎么检查呢?

2 个答案:

答案 0 :(得分:2)

select *
from INFORMATION_SCHEMA.tables
group by table_name
having count(table_schema) < 4

如果你有4个DB。如果需要更多,则必须调整having子句。

答案 1 :(得分:1)

此查询为您提供所有数据库中的所有唯一表。

    SELECT *,count(TABLE_NAME) 
    FROM 
   `TABLES` group by table_name 
    having count(TABLE_NAME)=1

如果您想要重复的表名,请使用此

    SELECT *,count(TABLE_NAME) 
    FROM 
   `TABLES` group by table_name 
    having count(TABLE_NAME)>1