프랑스의 CMS (SPIP)에서 전체 텍스트 검색을 사용합니다. 빼기 단어로 검색 한 결과가 올바르지 않습니다.전체 텍스트 검색은 -xxxword를 제외하지 않습니다.
SELECT t.id_zotspip, t.titre, t.resume,
MATCH(t.`titre`) AGAINST ('+corrosion -bacteria' IN BOOLEAN MODE) * 10
+ MATCH(t.`titre`,t.`resume`) AGAINST ('+corrosion -bacteria' IN BOOLEAN MODE) * 2.2 AS score
FROM `spip_zotero311`.spip_zitems AS t
WHERE ((MATCH(t.`titre`) AGAINST ('+corrosion -bacteria' IN BOOLEAN MODE))
OR (MATCH(t.`titre`,t.`resume`) AGAINST ('+corrosion -bacteria' IN BOOLEAN MODE)))
GROUP BY t.id_zotspip ORDER BY score DESC LIMIT 0,500
우리는 이력서에 박테리아 결과를 얻을 수 ...
테이블의 유형의 MyISAM하지만베이스의 유형 이노입니다 : 우리는 phpMyAdmin과의 CMS에 의해 생성 된 SQL 요청을 시도했다.
제안 사항?
감사합니다.
왜 GROUP BY t.id_zotspip을 사용합니까? 그것은 틀린 것처럼 보인다. – Evgeny
또한'WHERE' 절 안에서'OR'을'AND'로 대체해야한다고 생각합니다. – Evgeny
감사합니다. OR 절이 WHERE 절의 AND로 바뀌면 결과는 괜찮은 것 같습니다! 이제 우리는 왜 SPIP이 잘못된 요청을 생성하는지 파악해야합니다 ... 귀하의 도움을 다시 한번 감사드립니다! –