public function search($search)
{
global $pdo;
$query = $pdo->prepare('SELECT * FROM items WHERE item_name = ?');
$query->bindValue(1, $search);
$query->execute();
return $query->fetchAll();
}
如果我调用它,并说$search
是cookie
的函数。
在我的数据库中,我有
chocolate chip cookie
oatmeal cookie
cookie
它只会返回cookie
那么我如何修复我的查询,以便它返回所有部分匹配或包含 cookie 的item_name
?谢谢。
为了完整起见,或者作为LIKE
的替代品,您可以使用LOCATE()
或INSTR()
:
SELECT * FROM table WHERE LOCATE('cookie', item_name);
注意:如果您对性能感到好奇,这里有一些旧的基准测试。
你会用like
:
where item_name like '%cookie%'
如果要查找完整的单词匹配:
where concat(' ', item_name, ' ') like '% cookie %'