SQL不像语句

时间:2010-09-06 02:06:04

标签: sql tsql

如何从sys.tables中选择表,其中表名不包含特殊字(传入参数)。

我想选择所有包含'customer'字样的表格,而不是那些以'old'结尾的表格 在名字中。

数据库中的TableName

customer1表
的customer2
customer3
customerold1
customerold2

输出通缉

customer1表
的customer2
customer3

2 个答案:

答案 0 :(得分:14)

SELECT * FROM sys.tables
    WHERE TableName LIKE '%customer%'
      AND TableName NOT LIKE '%old' -- note the lack of trailing '%'

LIKE (Transact-SQL)

答案 1 :(得分:1)

假设您有一个特殊单词的参数,您可以这样做:

WHERE TableName LIKE @specialWord + '%'
AND TableName NOT LIKE '%' + @specialWord + '%old%'