具有多个参数的搜索引擎机制

发布于 2024-11-09 17:00:18 字数 702 浏览 0 评论 0原文

我正在使用 CodeIgniter/PHP/MySQL 创建一个新网站。

我有一种机制可以传递数据库中的一些项目,每个项目都有 3 个字段和一个描述

现在我想为这些创建一个搜索机制,具有以下功能:

  • 在 3 个字段和描述中搜索关键字
  • 用户可以为 3 个字段选择多个值
  • 将上述两者结合起来,如果用户同时选择多个值和一个关键字,

我已经可以解析数据并创建类似的内容:

SELECT * FROM (`My_Table`) 
    WHERE 
        `description` COLLATE utf8_general_ci 
            REGEXP '\[\[:<:\]\]asdasdasd\[\[:>:\]\]' 
        AND `value1` LIKE '%blabla%' 
        OR `value1` LIKE 'lala'

但这与我想要创建的内容相去甚远!

我不是 SQL 专家,所以我很难找到一种方法来做到这一点。

如果有人知道/想要,请帮助我! 提前致谢!

注意:代码示例/示例将受到高度赞赏!

I am creating a new website using CodeIgniter/PHP/MySQL.

I have the mechanism to pass some items in my database, which has each 3 fields and a description.

Now I want to create a search mechanism for those, with the following features:

  • Search for a keyword in both 3 fields and description.
  • The user can select multiple values for the 3 fields.
  • Combine the above two, if user both selects multiple values and a keyword

I already can parse the data and create something like this:

SELECT * FROM (`My_Table`) 
    WHERE 
        `description` COLLATE utf8_general_ci 
            REGEXP '\[\[:<:\]\]asdasdasd\[\[:>:\]\]' 
        AND `value1` LIKE '%blabla%' 
        OR `value1` LIKE 'lala'

but it's far from what I want to create!

I am not expert in SQL, so I am having a hard time to find a way to do this.

If anyone knows/wants, please please help me!!
Thanks in advance!

Note: Code samples/Examples will be highly appreciated!

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

无声静候 2024-11-16 17:00:18

您可以使用全文搜索

http://dev.mysql .com/doc/refman/5.5/en/fulltext-search.html

这会对您有很大帮助。

注意:表应使用MyISAM存储引擎,列应全文索引。

You can use full text search for this

http://dev.mysql.com/doc/refman/5.5/en/fulltext-search.html

This will help you alot.

Note: Table should use MyISAM Storage engine and column should be full text indexed.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文