gpt4 book ai didi

php - 在 PHP/MySql 中使用多个关键字进行搜索

转载 作者:行者123 更新时间:2023-11-29 07:02:45 25 4
gpt4 key购买 nike

我正在尝试使用不同的关键字根据技能搜索人员。但是,每当我尝试搜索时,结果都会缩小范围以匹配确切的关键字。

例子:

用户表:

ID           Name                  Skills
1 Joe Smith Cooking Dancing Painting
2 John Williams Drawing Fishing
3 Beth Gray Cooking Swimming
4 Martin Torres Dancing Repairing CPR
5 Alice Lee Cooking Drawing Welding

如果您使用“ cooking ”一词进行搜索,它会返回 3 个结果,即 1,3 和 5,这没问题。但是,如果您使用“Cooking Drawing”搜索,它只会返回 1 个结果,即同时拥有 Cooking 和 Drawing 的 5 个结果。我想要实现的是返回所有至少拥有 keywords 中一项技能的人,在本例中为 1、2、3 和 5。

谢谢。

最佳答案

您应该使用 Mysql Fulltext 搜索功能。

这是您可以在代码中使用全文的查询:

SELECT * FROM your_table_name
WHERE MATCH (yourcolumn1,yourcolumn2,...)
AGAINST ('your texts to search');

注意:您应该在要搜索的列上应用 fulltext index

您可以使用 like 结合 AND OR 条件进行查询:

SELECT * FROM table_name WHERE (skills LIKE '%Cooking%' AND skills LIKE '%Dancing%' ... )

SELECT * FROM table_name WHERE (skills LIKE '%Cooking%' OR skills LIKE '%Dancing%' ... )

关于php - 在 PHP/MySql 中使用多个关键字进行搜索,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9188637/

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