부울 검색에 문제가 있습니다. 먼저 데이터베이스/테이블에 문제가 있다고 생각했지만 다음 열은 하나의 열과 샘플 값을 가진 샘플 테이블을 만들려고 시도했지만 결과는 같습니다. , 그것은 어떤 단어들에 대해서는 성공적으로 실행되고 어떤 아이디어에 대해서는 실패합니다. 성공적으로 실행BOOLEAN 검색 특정 단어에 대해 MySQL이 작동하지 않습니다.
조회 :
SELECT * FROM `temp` WHERE (match (txt) against ('develo*' IN BOOLEAN MODE)>0)
SELECT * FROM `temp` WHERE (match (txt) against ('devel*' IN BOOLEAN MODE)>0)
SELECT * FROM `temp` WHERE (match (txt) against ('senio*' IN BOOLEAN MODE)>0)
을하지만 단어 '초'또는 '세 번째', 그것은 ---
SELECT * FROM `temp` WHERE (match (txt) against ('secon*' IN BOOLEAN MODE)>0)
SELECT * FROM `temp` WHERE (match (txt) against ('third*' IN BOOLEAN MODE)>0)
실패 다음되는 샘플 테이블에 대해 유사한 검색을 수행 할 때 및 값 -----
stopwords list로서
CREATE TABLE IF NOT EXISTS `temp` (
`txt` varchar(30) NOT NULL
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
--
-- Dumping data for table `temp`
--
INSERT INTO `temp` (`txt`) VALUES
('developer'),
('Developer'),
('Developer senior'),
('senior developer'),
('second job'),
('job second'),
('third'),
('third job'),
('job third');
는 후속하려면 다음과 같은 "일부"또는 "다음", 중지 단어이고 나는 그 목록에 대한 링크를 준 검색 string._ –
@BradChristie에 존재하는 경우 일치하지 않는 그래서 인용에 대한 결정 등 _Common 단어 여기에. 물론 당신 말이 맞습니다. 불용 단어 목록은 일치시키기 위해 '너무 흔한'단어로 간주됩니다. – raina77ow
감사합니다. 그러나 이것은 확실하게 도움이됩니다. 내 데이터에 용어 또는 단어 'td'가 있고 검색과 같이 따옴표를 사용하여 검색하면 'td'데이터 : '이 문제의 원인이 무엇인지 알 수 있습니다. 이것은 샘플 td 데이터입니다. '.. 결과를 가져 오지 않습니다. –