在mysql中的不同表中查找相等的列

时间:2013-08-24 04:43:32

标签: php mysql select

有三个表,每个表有大约60列,我必须找到它们之间的所有常用列。

有没有办法自动查找三个不同表之间的公共列?

2 个答案:

答案 0 :(得分:1)

select distinct COLUMN_NAME, count(TABLE_NAME) as COMMON_COUNT
from information_schema.COLUMNS
where TABLE_NAME in ('table1', 'table2', 'table3') and TABLE_SCHEMA = 'dbname'
group by TABLE_SCHEMA, COLUMN_NAME
having COMMON_COUNT > 1

答案 1 :(得分:0)

我不知道你的桌子看起来如何,所以我会写下我会怎么做(P.S可以有更好的方法)

1)从第一个表中选择所有值。

2)制作两个循环,首先从第二个表中搜索,然后从第三个表中搜索。

3)计算行数。

4)如果行数大于1,则表示您有重复行。