简体   繁体   English

MYSQL 5.7.17全文搜索

[英]MYSQL 5.7.17 FULL TEXT SEARCH

Table structure after Alter table Alter表之后的表结构

CREATE TABLE `WINNER` (
  `ID` bigint(20) NOT NULL,
  `CREATED_DATE` datetime NOT NULL,
  `DELETED` bit(1) NOT NULL,
  `EMAIL` varchar(255) DEFAULT NULL,
  `FIRST_NAME` varchar(255) NOT NULL,
  `LAST_NAME` varchar(255) NOT NULL,
  `NO_OF_AWARDS` int(11) DEFAULT NULL,
  `PASSWORD` varchar(255) NOT NULL,
  `PHONE` varchar(10) NOT NULL,
  `country_ID` bigint(20) NOT NULL,
  `orgId_ID` bigint(20) NOT NULL,
  PRIMARY KEY (`ID`),
  UNIQUE KEY `UK_kkk28h9hpbjqvfis7hr4njm1t` (`PHONE`),
  KEY `FK8nj02saxptd0qs5mh7ix6q82a` (`country_ID`),
  KEY `FKlosg52h1cxfljriqt9vhf1b5o` (`orgId_ID`),
  FULLTEXT KEY `PAGINATION_SEARCH` (`FIRST_NAME`,`LAST_NAME`,`PHONE`,`EMAIL`),
  CONSTRAINT `FK8nj02saxptd0qs5mh7ix6q82a` FOREIGN KEY (`country_ID`) REFERENCES `COUNTRY` (`ID`),
  CONSTRAINT `FKlosg52h1cxfljriqt9vhf1b5o` FOREIGN KEY (`orgId_ID`) REFERENCES `ORGANISATION` (`ID`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1;

Alter statement 变更陈述

ALTER TABLE `WINNER`
    ADD FULLTEXT INDEX `PAGINATION_SEARCH` (`FIRST_NAME`, `LAST_NAME`, `PHONE`, `EMAIL`);

The following search throws syntax error. 以下搜索将引发语法错误。

 select * from `WINNER` WHERE MATHCH(`FIRST_NAME`, `LAST_NAME`, `PHONE`, `EMAIL`)
     AGAINST ('aa' IN NATURAL LANGUAGE MODE);

Error 错误

You have an error in your SQL syntax; 您的SQL语法有误; check the manual that corresponds to your MySQL server version for the right syntax to use near 'AGAINST ('aa' IN NATURAL LANGUAGE MODE)' at line 2 检查与您的MySQL服务器版本相对应的手册,以在第2行的'AGAINST('aa'IN NATURAL LANGUAGE MODE)'附近使用正确的语法

There is spelling mistake in below query for MATCH 下面的MATCH查询存在拼写错误

select * from `WINNER` WHERE MATCH(`FIRST_NAME`, `LAST_NAME`, `PHONE`, `EMAIL`)
     AGAINST ('aa' IN NATURAL LANGUAGE MODE);

Your problem is just a typo in word match, the correct query is this: 您的问题只是单词匹配中的错字,正确的查询是这样的:

 select * from `WINNER` WHERE MATCH(`FIRST_NAME`, `LAST_NAME`, `PHONE`, `EMAIL`)
 AGAINST ('aa' IN NATURAL LANGUAGE MODE);

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM