2012-10-06 4 views
0

검색 문자열로 시작하거나 끝나는 단어와 일치시킬 수 있습니까?MySQL : 부울 전체 텍스트, x로 시작/끝나는 단어를 검색 하시겠습니까?

예 :

내가 단어 "파인애플"를 포함하는 열을 찾고 싶어요. 나는 "소나무"또는 단순히 "사과"를 검색하여 그 행을 찾고 싶습니다.

이 작업을 수행 할 수 있습니까?

현재 코드, 그것은 도움이된다면 : 당신이 정규 표현식에 대해 원하는 당신이 무엇을 넣을 수 있습니다 준비된 문을 사용할 수 있다면 더 일반적인 경우에 대한

select 'pineapple' regexp 'pine|apple'; 

: 귀하의 예를 들어

SELECT id 
FROM movies 
WHERE MATCH (movies.movie_title) 
AGAINST ('+word1 +word2' IN BOOLEAN MODE) 
+0

예 - http://dev.mysql.com/doc/refman/5.1/en/regexp.html – ethrbunny

+0

예를 들어 주시겠습니까? 편집 : LIKE를 사용하여 가능하다는 것을 알고 있으며 REGEXP에서도 가능할 것 같습니다. 그러나 전체 텍스트 쿼리에서 어떻게 사용합니까? TS, 코드로 업데이트 참조하십시오. – qwerty

답변

0

쿼리가 작성되면 문자열. 일치하는 대상이 여러 개인 경우 복잡한 표현식을 작성하거나 결과 및 루프 또는 자체 조인에 대해 subselect를 수행 할 수 있습니다. 이것에 접근하는 방법은 많이 있습니다.

+0

그게 효과가 있지만 전체 텍스트 검색이 아닙니다, 그렇습니까? 내 DB가 그렇게 크지 않다면 사용 하겠지만, DB가 계속 커지면서 장기적으로 볼 때 이것이 아주 느릴 까봐 걱정됩니다. – qwerty

+0

선택한 문자열에서 regexp의 인스턴스를 찾습니다. regexp의 다른 매개 변수 (문자열의 시작/끝, 인스턴스 수 등)를 사용하여 제한 할 수 있습니다. – ethrbunny

관련 문제