我在一个包含各种文本的列中搜索字符串'%(')。 这个字符串可以出现在文本中的任何地方,所以我尝试在搜索字符串时使用LIKE子句。
其中COLUMN LIKE'%(%'
但是,这会将%视为通配符并搜索每个(在文本中。
为了逃避,我尝试使用ESCAPE关键字
其中COLUMN LIKE'%(%'ESCAPE'%'
但这导致了一个错误:
涉及字段* N的选择错误。
如果能找到字符串,请告诉我。
涉及的一些字符串是:"%FOUND(....", or "...%SUBST(....", or even "...(%ABS(..."
我在AS400上使用DB2。
答案 0 :(得分:4)
WHERE column LIKE '%\%(%' ESCAPE '\'
答案 1 :(得分:0)
好吧,我试过跟随它,它有点工作..
CREATE TABLE test(column1 varchar(500))
go
INSERT INTO test VALUES('42%344%lsdj%'),('hello%asgj%sdf%l8-')
SELECT * FROM test WHERE column1 LIKE '%344[%]lsd%'
返回:
column1
--------------
42%344%lsdj%
答案 2 :(得分:0)
另一种方法,但效率不如上,
WHERE INSTR(column,'%(') > 0