Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/76.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 在LIKE查询中查找%字符_Php_Sql_Mysql_Special Characters - Fatal编程技术网

Php 在LIKE查询中查找%字符

Php 在LIKE查询中查找%字符,php,sql,mysql,special-characters,Php,Sql,Mysql,Special Characters,我有一个SQL数据库,我想做一个查询,显示包含符号“%”的所有数据。通常,要在数据库中查找字符(例如:“z”),我会使用如下查询: mysql_query("SELECT * FROM mytable WHERE tag LIKE '%z%'"); 但在这里,我想找到%字符,但在SQL中这是一个笑话,所以当我写: mysql_query("SELECT * FROM mytable WHERE tag LIKE '%%%'"); 它显示了我所有的数据。那么如何在我的SQL数据中找到%字符呢

我有一个SQL数据库,我想做一个查询,显示包含符号“%”的所有数据。通常,要在数据库中查找字符(例如:“z”),我会使用如下查询:

mysql_query("SELECT * FROM mytable WHERE tag LIKE '%z%'");
但在这里,我想找到%字符,但在SQL中这是一个笑话,所以当我写:

mysql_query("SELECT * FROM mytable WHERE tag LIKE '%%%'");
它显示了我所有的数据。那么如何在我的SQL数据中找到%字符呢


谢谢

您可以用反斜杠转义
%
符号:

SELECT * FROM mytable WHERE tag LIKE '%\%%'
引用s:

\%
\\
序列用于在模式匹配上下文中搜索
%
\
的文本实例,否则它们将被解释为通配符


以下是一个标准方法:

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