sql查询出表中所有列名 判断两个表中的列是否相同

declare @objid int,@objname char(40)
set @objname = '表a'
select @objid = id from sysobjects where id = object_id
(@objname)
select 'Column_name' = name from syscolumns where id =
@objid
order by colid

拓展一下,判断表a中是否有表b中不存在的列名.

declare @objid int,@objname char(40)
set @objname = '表a'
declare @objid2 int,@objname2 char(40)
set @objname2 = '表b'
select @objid = id from sysobjects where id = object_id
(@objname)
select @objid2 = id from sysobjects where id = object_id
(@objname2)
select 'Column_name' = name from syscolumns where id =
@objid and name not in ( select name from syscolumns where id = @objid2)
order by colid
原文地址:https://www.cnblogs.com/lovewife/p/1437564.html