Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/amazon-web-services/12.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 - Fatal编程技术网

Mysql全文搜索中的精确匹配搜索

Mysql全文搜索中的精确匹配搜索,mysql,Mysql,通过使用全文搜索,而不是搜索多个单词的确切值。 这就是问题所在 SELECT * FROM csv WHERE match(data) against('"TMN PANTAI"' IN BOOLEAN MODE) 它显示结果,但用“TMN”、“PANTAI”和“TMN PANTAI”进行搜索 如何使用“TMN PANTAI”搜索精确匹配?全文不考虑空间,这就是您无法使用它的原因 如果您仍然想利用全文索引,可以使用匹配查询筛选结果集,并添加一个附加的条件,如。这将比在整个表上使用LIKE

通过使用全文搜索,而不是搜索多个单词的确切值。 这就是问题所在

  SELECT * FROM csv WHERE match(data) against('"TMN PANTAI"' IN BOOLEAN MODE) 
它显示结果,但用“TMN”、“PANTAI”和“TMN PANTAI”进行搜索


如何使用“TMN PANTAI”搜索精确匹配?

全文
不考虑空间,这就是您无法使用它的原因

如果您仍然想利用全文索引,可以使用
匹配查询
筛选结果集,并添加一个附加的
条件,如
。这将比在整个表上使用
LIKE
查询更有效,因为
LIKE
现在要过滤的记录更少

SELECT * FROM csv WHERE match(data) against('+TMN +PANTAI' IN BOOLEAN MODE) 
AND data like '%TMN PANTAI%'

它正在搜索字段中的文本。只需替换%TMN PANTAI%@ManmeetKhurana即可更新答案。试试这个。它不起作用。它已经尝试过了,它通过使用反(“+TMN+PANTAI”在布尔模式下)给出结果“TMN”或“PANTAI”。但我想匹配结果“TMN PANTAI”试试答案中的第二个建议,它使用与“TMN”相同的单个字符串作为“PANTAI”进行搜索。它们有关于精确匹配的解决方案吗?根据给出结果“TMN潘泰”