如何查找列是否存在是否是任何其他表

时间:2013-12-16 05:30:42

标签: sql

我想知道如何在SQL中的其他表中找到特定的列。我使用以下查询

在存储过程中找到了存在
SELECT *,ROUTINE_NAME, ROUTINE_DEFINITION,ROUTINE_TYPE
FROM INFORMATION_SCHEMA.ROUTINES 
WHERE ROUTINE_DEFINITION LIKE '%MyColumnName%' 

如何在表中检查是否存在?

2 个答案:

答案 0 :(得分:2)

信息架构视图非常有用。我一直用它们来生成SQL。

此查询查看COLUMNS视图,它自动包含TABLE和SCHEMA以便于访问。

SELECT 
   TABLE_SCHEMA,
   TABLE_NAME,

FROM
   INFORMATION_SCHEMA.COLUMNS
WHERE
   COLUMN_NAME LIKE '%MyColumnName%' 

当然,如果你是精确的那么你就不会使用LIKE而不是COLUMN_NAME = 'MyColumnName'可能更好。

答案 1 :(得分:-1)

if exists (select * from INFORMATION_SCHEMA.COLUMNS where TABLE_NAME='' and ') begin print 'Column you have specified is exists' end else begin print 'Column does not exists' end

" http://confitech.blogspot.in/2014/05/how-to-find-whether-specific-column.html"