Mysql 全文搜索带引号的字符串
我想对包含引号的字符串执行全文搜索,例如字符串是Mysql 全文搜索带引号的字符串,mysql,full-text-search,Mysql,Full Text Search,我想对包含引号的字符串执行全文搜索,例如字符串是[“test1”、“test2”、“test1test”],我只想搜索“test1”,所以它不应该返回“test1test” 我计划在一个过程中使用它,其中要搜索的字符串是一个(未指定的)输入参数,因此在匹配该参数之前,需要在该参数周围添加引号)。 上面示例的调用是callsarch(“test”) 正确的语法是什么?如果您使用=,它将按照您的期望进行完整的单词匹配 SELECT * FROM TABLE1 WHERE TEXTCOL = '
[“test1”、“test2”、“test1test”]
,我只想搜索“test1”
,所以它不应该返回“test1test”
我计划在一个过程中使用它,其中要搜索的字符串是一个(未指定的)输入参数,因此在匹配该参数之前,需要在该参数周围添加引号)。
上面示例的调用是callsarch(“test”)代码>
正确的语法是什么?如果您使用=
,它将按照您的期望进行完整的单词匹配
SELECT * FROM TABLE1 WHERE TEXTCOL = 'text1';
这将只返回具有精确值的行,即text1
另一方面,如果要执行包含类型的搜索(您正试图避免),可以使用LIKE
操作符作为:
SELECT * FROM TABLE1 WHERE TEXTCOL LIKE '%text1%';//text1 anywhere in the string
SELECT * FROM TABLE1 WHERE TEXTCOL LIKE '%text1'; //text1 with any prefix
SELECT * FROM TABLE1 WHERE TEXTCOL LIKE 'text1%'; //text1 with any suffix
如果没有,请提供有关您的要求的详细信息。这有点让人困惑。因此,如果搜索“test1”,示例字符串将不匹配?