我想搜索MySQL数据库以匹配用户传递的关键字。我听说使用LIKE
是最快的选项,但在PHP代码中找不到使用LIKE的完整简单查询的示例。
这就是我的意思:
$value = 'Fire';
$result = mysql_query("SELECT * FROM effects WHERE title LIKE 'value%'");
我知道数据库中有一行Fire
作为标题,但查询返回null
。
有人可以举个例子说明如何执行MySQL LIKE搜索或替代按关键字查找行。
谢谢。
答案 0 :(得分:3)
您需要添加变量的美元符号:
$result = mysql_query("SELECT * FROM effects WHERE title LIKE '$value%'");
答案 1 :(得分:2)
您在变量$
之前缺少value
。
您的查询应该是
$value = 'Fire';
$result = mysql_query("SELECT * FROM effects WHERE title LIKE '$value%'");
说有My Fire Effect
之类的标题。你不想在搜索结果中这个吗?如果您想在结果中显示My Fire Effect
,那么您应该在$ value
%
$value = 'Fire';
$result = mysql_query("SELECT * FROM effects WHERE title LIKE '%$value%'");
希望这会对你有所帮助。
注意 ,在demo中的第一个查询返回5行,但是第二个查询返回8行,这是完美的。