这个question also has the answer但是具体提到了DB2。
如何使用已包含百分比LIKE
符号的%
搜索字符串? LIKE
运算符使用%
符号表示通配符。
答案 0 :(得分:245)
使用括号。所以要寻找75%
WHERE MyCol LIKE '%75[%]%'
这比ESCAPE简单,并且对大多数RDBMS来说都很常见
答案 1 :(得分:47)
您可以将ESCAPE
关键字与LIKE
一起使用。只需将所需字符(例如'!')添加到字符串中的每个现有%
符号,然后将ESCAPE '!'
(或您选择的字符)添加到查询的末尾。
例如:
SELECT *
FROM prices
WHERE discount LIKE '%80!% off%'
ESCAPE '!'
这将使数据库将80%视为要搜索的字符串的实际部分,而不是80(通配符)。
答案 2 :(得分:13)
WHERE column_name LIKE '%save 50[%] off!%'
答案 3 :(得分:0)
在MySQL 中,
WHERE column_name LIKE '%|%%' ESCAPE '|'
答案 4 :(得分:0)
您可以使用下面的代码查找特定值。
WHERE col1 LIKE '%[%]75%'
如果要在百分号后加一位数字,可以编写以下代码。
WHERE col2 LIKE '%[%]_'