如何检查不同表的列中是否存在特定字符串? (Microsoft SQL Server)

时间:2012-09-19 19:50:41

标签: sql-server-2008

我有6张不同的表,比如说:dbo.One,dbo.Two,dbo.Three,.....,dbo.Six

我想检查6个不同表的任何列中是否存在某个字符串(例如:“CatWS_Energy_CB”)(此字符串不是整个列名,但包含在列名中)。有没有办法做到这一点?我正在尝试在SQL中执行if语句,但我不太确定如何处理第一部分。

任何帮助将不胜感激!

1 个答案:

答案 0 :(得分:1)

根据评论中的讨论,我认为这就是你所需要的。

SELECT Object_name(object_id, Db_id('Catastrophe'))
FROM   Catastrophe.sys.columns
WHERE  name LIKE '%CatWS_Energy_CB%'
       AND object_id IN ( Object_id('Catastrophe.dbo.One'), 
                          Object_id('Catastrophe.dbo.Two'), 
                          Object_id('Catastrophe.dbo.Three') )