为了让用户更轻松,我想在我的网站上添加多个关键字搜索。 因此,在输入中,用户会执行以下操作:“keyword1 keyword 2”(例如,与google类似)。 我是否需要编写一个解析该字符串的代码并根据该代码进行查询,或者是否存在可以在mysql中构建的内容?
答案 0 :(得分:2)
实现这一目标的一种简单方法是:
SELECT * FROM table
WHERE column LIKE '%keyword1%'
OR column LIKE '%keyword2%';
但您可能需要查看full text search functions。
编辑:哎呀,忘了处理拆分输入字符串。
取决于您使用的语言(PHP?):
要将关键字分开,假设它们用空格分隔:
$keywords = explode(" ", $searchquery);
然后您可以使用循环来创建SQL查询:
$query = "SELECT * FROM table WHERE ";
for($i = 0; $i < count($keywords); $i++)
{
$query .= "column LIKE '%{$keywords[$i]}%'";
if($i < count($keywords) - 1) $query .= " OR ";
}