2010-05-23 71 views
2

我有一个SQL数据库,我想查询谁显示包含符号“%”的所有数据。通常情况下,找到一个字符(例如:“Z”)在数据库中,我使用这样的查询:在LIKE查询中查找%字符

mysql_query("SELECT * FROM mytable WHERE tag LIKE '%z%'"); 

但在这里,我想找到了%字符,但在SQL它是一个小丑,所以当我写:

mysql_query("SELECT * FROM mytable WHERE tag LIKE '%%%'"); 

它显示我所有的数据。那么如何在我的SQL数据中找到%字符呢?

感谢

回答

12

你可以用一个反斜杠逃脱%标志:

\%\_序列用于搜索的文字实例:

SELECT * FROM mytable WHERE tag LIKE '%\%%' 

MySQL 5.0 Reference Manual :: 8.1.1 String小号报价%_在模式匹配的上下文中,否则他们会是我被解释为通配符。

+0

我爱你的人!!!!! :)我搜索了几个小时,非常感谢! – Jensen 2010-05-23 00:06:23

1

这是一种标准的方式:

SELECT * FROM mytable WHERE tag like '%|%%' ESCAPE '|'