我有以下声明
SELECT *
FROM Delivery_Note this_
WHERE mycol like '%[126]%'
我注意到这也会返回包含[123]的行。找到字符串中精确匹配的最佳方法是什么。
修改的 我感谢这不是一个有效的查询。这种方法还有其他一些原因。
答案 0 :(得分:2)
括号与LIKE
一起使用时指定范围。您可以使用ESCAPE
关键字。
WHERE mycol LIKE '%\[126\]%' ESCAPE '\';
当然,如果您尝试匹配完整的字符串,则不需要LIKE
,或者您可以删除%
个字符,LIKE
的行为就像=
(这使得将通配符或完全匹配传递给参数变得很灵活。)