【发布时间】:2017-05-19 19:14:38
【问题描述】:
为了自动化Users数据库的备份过程,我想比较两个表的结构(Users vs ArchivedUsers)。
我想比较两个表之间的列,以确保存在相同的列,即像 firebase_id 这样的列不会添加到 Users 表中而不添加到 ArchivedUsers 表中.
stackexchange 上的用户 @RolandoMySQLDBA 将一个查询放在一起,用于比较数据库中的两个表。
SELECT IF(COUNT(1)>0,'Differences','No Differences') Comparison FROM
(
SELECT
column_name,ordinal_position,
data_type,column_type,COUNT(1) rowcount
FROM information_schema.columns
WHERE table_schema=DATABASE()
AND table_name IN ('users','archived_users')
GROUP BY
column_name,ordinal_position,
data_type,column_type
HAVING COUNT(1)=1
) A;
你能想出一个可以比较两个表中的列的查询吗?
【问题讨论】:
标签: mysql