全文搜索带引号的字符串

时间:2012-11-04 23:19:58

标签: mysql full-text-search

我想对包含引号的字符串执行全文搜索,例如字符串为["test1","test2","test1test"],我想仅搜索"test1",因此不应返回{{1} }。

我打算在要搜索的字符串是(未调整的)输入参数的过程中使用它,因此需要在匹配之前在该参数周围添加引号。 以上示例的调用是"test1test"

正确的语法是什么?

1 个答案:

答案 0 :(得分:0)

如果您使用=,它将按照您的预期进行全字匹配。

   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

如果没有,请详细说明您的要求。