gpt4 book ai didi

php - mysql AND语句

转载 作者:行者123 更新时间:2023-11-30 23:25:04 27 4
gpt4 key购买 nike

我正在尝试在我的数据库中搜索“产品”、“描述”和“关键字”列。问题是,当我在表格的“描述”或“关键字”列中键入一个词时,但不在“产品”列中,它不会显示该结果。如果我键入表格的“产品”列中的单词,它只会显示结果。

我不确定 AND 语句是否按照我的意愿行事。我想在这 3 列中搜索与用户搜索的内容“相似”的词,并按相关性对结果进行排序。任何帮助将不胜感激。

$search_exploded = explode(" ",$searchquery);

foreach($search_exploded as $search_each)
{
$x++;
if ($x==1)
$construct .= "product LIKE '%$search_each%' AND description LIKE '%$search_each%' AND keywords LIKE '%$search_each%'";
else
$construct .= " OR product LIKE '%$search_each%' AND description LIKE '%$search_each%' AND keywords LIKE '%$search_each%'";
}

$sqlCommand = "SELECT * FROM Search WHERE $construct ORDER BY MATCH (product,description,keywords) AGAINST ('$searchquery') DESC";

最佳答案

我想在这 3 列中搜索单词

所以你需要使用 OR 而不是 AND :

product LIKE '%$search_each%' OR description LIKE '%$search_each%' OR keywords LIKE '%$search_each%'

如果用户搜索的词在三列中的任何一列中,这将显示结果。

关于php - mysql AND语句,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13756989/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com