Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/67.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
mysql-使用全文搜索从文本字段中提取特定单词_Mysql_Full Text Search_Word_Extract - Fatal编程技术网

mysql-使用全文搜索从文本字段中提取特定单词

mysql-使用全文搜索从文本字段中提取特定单词,mysql,full-text-search,word,extract,Mysql,Full Text Search,Word,Extract,我的问题有点像,但现在是一样的 我有一个文本字段,里面有单词。在我的语言中,单词可以有许多不同的结尾。我需要找到这个结局 我使用mysql的全文搜索,但我需要访问索引数据库,其中所有字段都被“剪切”为单词,并且单词被计数。然后我可以搜索“test*”,我可以很快找到“test”、“tested”、“testing”。我需要数据库中存在的所有endign的列表,这是我的主要目标 事实上,我可以获得包含特定“test*”单词的记录,但我不仅需要在字段中找到出现的位置,还需要以某种方式进行分组,以便获

我的问题有点像,但现在是一样的

我有一个文本字段,里面有单词。在我的语言中,单词可以有许多不同的结尾。我需要找到这个结局

我使用mysql的全文搜索,但我需要访问索引数据库,其中所有字段都被“剪切”为单词,并且单词被计数。然后我可以搜索“test*”,我可以很快找到“test”、“tested”、“testing”。我需要数据库中存在的所有endign的列表,这是我的主要目标

事实上,我可以获得包含特定“test*”单词的记录,但我不仅需要在字段中找到出现的位置,还需要以某种方式进行分组,以便获得所有以“test”开头的单词的列表。我不需要记录所在的位置,只需要一个列表,这样“测试”就不会被写入10次,而只写入一次(可能是一个计数器,它记录了多少次,但不是必需的)

有没有办法从fulltextsearch字段中提取这些信息,或者我应该将所有字段分解为单词,制作一个充满单词的索引表,然后只做一个“like”单词%并根据不同的结果进行分组?我不知道在实践中如何做,但请告诉我正确的方向

总结一下:我有一个文本,我需要找出其中以“test”开头的单词,比如“tested”、“test”、“testing”“等等。。。这在英语中是没有意义的,但在我的语言中是有意义的,因为我们在不同的词尾上有相同的单词,而且它们太多了,有时有20个,我需要找出它们在哪里,这样我就可以制作一个大纲表;-)

更新:

数据库有ID(int)、components(text)和recipe(text)列

配料中的数据是具有不同结尾的烹饪配料,如:

一个鸡蛋 2个鸡蛋


等等。

您可以转储索引中存在的所有单词。这也会显示每个单词的频率。例如,测试使用200次,测试使用300次


手册:

你能提供一些关于数据库结构或使用的查询的详细信息吗?这似乎是个好主意,但你能将此索引表转储到文本文件以外的其他文件中吗?我需要将其作为数据库表,以便在其上搜索单词,并阅读文档,我只能找到转储到文本:-(您必须将其转储为文本,然后通过“加载数据填充”导入该文本文件):因此,没有使用“命令行”的直接mysql方法我想…Thanx…我看到了一些问题,因为我有UTF8和我们的特殊字符,在导出的文本中,我得到了2字节字符,而不是预期的č或š,因为UTF-8将使用2字节或更多的字符,而不是英语。这将在加载到DB中时正常工作。或者如果您在允许您使用sp的编辑器中查看它指定字符集。要加载此数据,请在加载数据中指定utf-8。这是通过“字符集”选项完成的。