반응형
아래는 내가 붙어있는 예제 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
반응형
'MySql' 카테고리의 다른 글
MySQL : 매일의 합계 (0) | 2021.01.16 |
---|---|
MySQL 날짜 함수가 미만으로 작동하지 않습니다. (0) | 2021.01.16 |
MySQL 날짜 데이터를 mysql 날짜 형식으로 변환 (0) | 2021.01.15 |
MySQL PDO MySQL로 2 개의 테이블에 삽입 (0) | 2021.01.15 |
MySQL 데이터베이스 기본 키는 정수 여야합니까? (0) | 2021.01.15 |
댓글