2013-11-03 26 views
2

我有一个数据库,应该包含所有的顶级和二级域名。但是我解析的feed包含很多子文件夹,我想删除包含任何%符号的任何行,但是我很难弄清楚如何使用百分号作为字段I' d喜欢匹配,同时仍然使用LIKE功能。下面是代码,我尝试使用:如何在LIKE中使用百分号(%)而不将其视为通配符?

select FROM `001ProductList` WHERE programURL LIKE '%%%' 

这里是我想要匹配的例子:?

www.site.com%3Ack-5941560-10463497网址= http%3A%2F%2Fwww.example.com%2Fproddetail.aspx%...

如果我遇到一个带有%符号的行,我想删除它。

+0

http://stackoverflow.com/questions/15214509/what-does-backslash-mean-in -an-sql-query/15215106#15215106,http://stackoverflow.com/questions/10803489/sql-like-query-using-where-search-criteria-contains – user2864740

回答

11

逃生字面%字符:

select * 
FROM 001ProductList 
WHERE programURL LIKE '%\%%' 

或使用正则表达式

WHERE programURL RLIKE '%' 
+0

http://dev.mysql.com/doc /refman/5.0/en/string-comparison-functions.html#operator_like –

+0

@Bohemian'SELECT * FROM'001ProductList' WHERE programURL LIKE'%/ %%' 限制0,30'选择表中的所有内容,包括不包含百分号的网址。 – Robert82

+0

@波希米亚,但第二个选项很好!谢谢! – Robert82

1
SELECT * 
FROM `001ProductList` 
WHERE LOCATE('%', `programURL`) <> 0; 
相关问题