我有两个名为a
和b
的表。
表a
包含50列,表b
包含75列
这两个表中有相同的列名。如何找到相同的列?
答案 0 :(得分:6)
您可以查询sys.columns
,然后执行INTERSECT
查找常用列名称:
SELECT name
FROM sys.columns
WHERE OBJECT_NAME(object_id) = 'a'
INTERSECT
SELECT name
FROM sys.columns
WHERE OBJECT_NAME(object_id) = 'b'
答案 1 :(得分:4)
请尝试一下它会帮助你
select column_name from INFORMATION_SCHEMA.COLUMNS where TABLE_NAME='a'
INTERSECT
select column_name from INFORMATION_SCHEMA.COLUMNS where TABLE_NAME='b'
答案 2 :(得分:1)
您还可以查询视图
INFORMATION_SCHEMA.COLUMNS
这样:
SELECT table_name, column_name
FROM INFORMATION_SCHEMA.COLUMNS
WHERE table_name IN ('your_a_table','your_b_table')
ORDER BY column_name
通过这个,您可以很好地查看两个表之间的所有共同列(以及其他列)。