用LIKE进行SQL查询

时间:2013-01-28 11:26:54

标签: php mysql drupal drupal-6 phpmyadmin

我有一个奇怪的问题,请看一下这个查询:

select * from myfriend where name like "%n%";

在phpMyAdmin上执行此查询时,查询返回了正确的结果,但是当使用php执行它时没有返回结果。

请注意这个查询在drupal 6中执行。

char“n”和PHP有什么问题?

3 个答案:

答案 0 :(得分:3)

百分号在Drupal 6查询中用作占位符,因此您需要转义它们:

$query = db_query('select * from myfriend where name like "%%n%%"');

答案 1 :(得分:1)

$searchChar = "n";

$query = "SELECT * FROM `myfriend` WHERE `name` LIKE '%" . $searchChar . "%'";

然后在语句中使用$query变量。

例如:

$mysql->query($query);

mysql_query($query);

答案 2 :(得分:0)

您的查询非常完美。简要介绍一下。您可以检查从php到mysql的数据库连接是否正确。您可以从php文件中回显该查询并运行到phpmyadmin,如果它提供正确的输出,那么肯定会出现数据库连接问题。

php中任何字符都没有问题。