MySql完整索引搜索不起作用

时间:2014-10-29 11:10:20

标签: mysql full-text-search

我在这里设置了示例代码

  

http://sqlfiddle.com/#!2/6aa9ec/1

     

下面提到的数据库查询,用于搜索三星这个词,但它不起作用

SELECT `idREQUEST`, `USER_NAME`, `idCATEGORY`, `TITLE`, `DESCRIPTION`, `IMAGE_URL1`, `IMAGE_URL2`, `IMAGE_URL3`, `POST_DATE`
    FROM `requests`
    WHERE MATCH (`TITLE`,`DESCRIPTION`) AGAINST('Samsung')

2 个答案:

答案 0 :(得分:2)

您可以使用Boolean Full-Text Searches

SELECT `idREQUEST`,
`USER_NAME`, 
`idCATEGORY`, 
`TITLE`,
`DESCRIPTION`, 
`IMAGE_URL1`, 
`IMAGE_URL2`,
`IMAGE_URL3`, 
`POST_DATE`
FROM `requests`
WHERE MATCH (`TITLE`,`DESCRIPTION`) AGAINST('+Samsung' IN BOOLEAN MODE)
  

根据文件

     

MySQL可以使用执行布尔全文搜索   IN BOOLEAN MODE修饰符。使用此修饰符,某些字符   在搜索中的单词的开头或结尾有特殊含义   串。在以下查询中,+运算符表示a   对于匹配,必须分别出现单词   发生。

DEMO

答案 1 :(得分:0)

此查询查找的值仅为“三星”的图块和说明。但是,您的表格中没有条目只有'三星'。因此,我建议您使用%

SELECT `idREQUEST`, `USER_NAME`, `idCATEGORY`, `TITLE`, `DESCRIPTION`,
`IMAGE_URL1`, `IMAGE_URL2`, `IMAGE_URL3`, `POST_DATE`
 FROM `requests`
  where  `TITLE` like '%Samsung%' or `DESCRIPTION` like '%Samsung%'

This is the link