我正在尝试获取给定表的列名。所以我写了一个这样的查询:
SELECT sc.Name
FROM Asdim.dbo.sysobjects so
INNER JOIN Asdim.dbo.syscolumns sc ON so.id = sc.id
INNER JOIN Asdim.dbo.systypes st ON sc.xtype = st.xusertype
WHERE so.Name = 'Admin'
问题是我有两个名为“Admin”的表,但它们有不同的模式。所以当我运行这个查询时:
SELECT * FROM Asdim.dbo.sysobjects
WHERE name LIKE 'Admin'
我得到两条记录,因为表名相同。有没有办法我也可以根据模式名称过滤掉?