我想只返回包含特定字段中的文本[XXXX]的值。 我的查询返回有4位数字的值,因为我假设SQL服务器将[XXXX]视为任何具有4位数字的数字。SQL Server - LIKE [XXXX]
我有一个测试查询下面的值列表来演示这个问题。
select X.VadDesc
From (VALUES
('Product AAAA Description'),
('Product BBBB Description'),
('Product [XXXX] Description'),
('Product2 [XXXX] Description'),
('Product 2 [AAAA] Description'),
('Product X 1234 Description'),
('Product X 1235 Description'),
('Product X 1236 Description'),
('Product X 1237 Description')
) as X (VadDesc)
Where X.VadDesc like '%[XXXX]%'
我的查询应该只返回:
Product [XXXX] Description
Product2 [XXXX] Description
但它返回:
Product [XXXX] Description
Product2 [XXXX] Description
Product X 1234 Description
Product X 1235 Description
Product X 1236 Description
Product X 1237 Description
我怎样才能做到这一点? 我不只是想寻找XXXX,因为这可能是我不想返回的行。
'[ABC]'是字符范围。这意味着该模式应该与任何字符A,B,C匹配。你需要逃避[ –