我来自PostgreSQL的背景。
如果我想在所有表的所有列中搜索值中某处包含“ the”的任何列名,则可以这样做:
select *
from information_schema.columns
where column_name ilike '%the%'
这在SQL Server 2008 R2中不起作用,有人有任何建议吗?到目前为止,我正在运行此查询:
select t.name as table_name, c.name as column_name
from sys.tables as t
inner join
sys.all_columns as c
on
c.object_id = t.object_id
where t.name ilike '%the%'
order by c.name, t.name;
t.name与'%the%'相似的地方使查询失败并显示以下错误消息:
在上下文中指定的非布尔类型的表达式,其中 情况可能会在“ ilike”附近。
有人有什么建议吗?
谢谢
答案 0 :(得分:1)
ilike在SQL Server中不存在,您可以改用like。