본문 바로가기
MySql

MySQL 여러 단어에 대한 mysql 일치

by 베이스 공부 2021. 1. 15.
반응형

아래는 내가 붙어있는 예제 SQL입니다. "iphone 4s"라는 제품을 반환하지 않고 10 개의 다른 결과를 반환합니다. 어떤 도움이라도 좋을 것입니다.

SELECT * FROM products 
          WHERE match(desc) against('+iphone +4s' IN BOOLEAN MODE) LIMIT 10";

결과 : 'iphone'및 '4s'단어 포함

SELECT * FROM products 
           WHERE match(desc) against('+iphone 4s' IN BOOLEAN MODE) LIMIT 10";

결과 : 'iphone'이라는 단어가 포함되지만 '4s'가 포함 된 경우 더 높은 순위 행

SELECT * FROM products 
           WHERE match(desc) against('iphone 4s' IN BOOLEAN MODE) LIMIT 10";

결과 : 'iphone'또는 '4s'단어 포함

제가 검색하고 싶은 것은 'iphone 4s'인데 'iphone은 좋지만 4s ...', 'new iphone 5가 출시되었습니다 ...', ...

누구든지 내가 그것을 해결하도록 도울 수 있습니까? 감사.

 

해결 방법

 

정확한 구문을 일치 시키려면 큰 따옴표를 사용하여 일치시킬 구문을 묶으십시오.

SELECT * 
FROM products 
WHERE MATCH(desc) 
      AGAINST('"iphone 4s"' IN BOOLEAN MODE) 
LIMIT 10


 

참조 페이지 https://stackoverflow.com/questions/14055116

 

 

반응형

댓글