Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/83.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_Sql_Database_Indexing_Full Text Search - Fatal编程技术网

仅对列开头的匹配使用MySQL匹配

仅对列开头的匹配使用MySQL匹配,mysql,sql,database,indexing,full-text-search,Mysql,Sql,Database,Indexing,Full Text Search,我在一个巨大的选项卡上添加了全文索引,以加快搜索速度,但找不到解决问题的方法 我有这样一句话: ID|TITLE|SOMETHING ELSE| 假设在这个表中,我有以下几行: 10|Some text|fdsfsd| 11|More some text|dfdsfsdffsdfsdf| 我只想匹配以“Some text”开头的行 然后我过去用小桌子之类的东西 其中的标题类似于“某些文本%” 但是,我如何使用match-on来准确地解释这一点,以利用全文索引的优势,因为使用这样的查询:

我在一个巨大的选项卡上添加了全文索引,以加快搜索速度,但找不到解决问题的方法

我有这样一句话:

ID|TITLE|SOMETHING ELSE|
假设在这个表中,我有以下几行:

 10|Some text|fdsfsd|
 11|More some text|dfdsfsdffsdfsdf|
我只想匹配以“Some text”开头的行

然后我过去用小桌子之类的东西

其中的标题类似于“某些文本%”

但是,我如何使用match-on来准确地解释这一点,以利用全文索引的优势,因为使用这样的查询:


WHERE match(TITLE)on('Some text')
我将获得两行。

您可以使用
全文索引进行大规模匹配,然后优化结果,例如:

WHERE match(TITLE) against('Some text')
  AND TITLE like 'Some text%'
这将使全文系统在应用其他标准之前缩小匹配选项的范围


但是,请确保在数据库完全填充时,通过执行
EXPLAIN
来检查此功能的性能并进行验证。有时优化器会做出奇怪的选择。

非常感谢,关键是减少成本;)