具有多个参数的搜索引擎机制
我正在使用 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 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
您可以使用全文搜索
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.