假设我的数据库中有1 GB的数据。我想做这样的事情:
如果用户搜索一个句子,说'Hello world我在这里',程序应该能够返回找到这个确切字符串的数据(行)以及具有类似文本的行,例如'Hello世界是一个着名的弦乐,我相信!“
我的问题是:哪一个更有效 - 一个sql命令还是一个动态编程概念?
如果sql更有效,那么可以用来执行相同操作的命令是什么?
我正在使用mysql 5.6
答案 0 :(得分:2)
您希望使用MySQL的全文功能,这些功能已记录为here。
基本上,您需要的数据结构是倒排索引。对于每个单词,它包含所有文档中单词的位置。有了这些信息,您就可以开始将事物拼凑在一起。
在大多数情况下,使用已建立的软件,而不是编写自己的软件,你会好得多。如果你真的想,我不想阻止你,但问题可能比你想象的更难。