MongoDB에서 검색을 구현해야한다고 상상해보십시오. 당신은 다음과 같이 문서의 컬렉션이 있습니다 :MongoDB에서 검색
{text: "This is some Text }
{text: "this is another text hehe"}
지금 당신이 검색어를 포함하는 모든 문서를 반환 소문자를 구분 검색을 구현하려는. 예를 들어 "text"를 검색하면 두 문서가 모두 반환됩니다. "hehe"를 검색하면 두 번째 문서 만 반환됩니다.
난 당신이 같은이 사용 $ 정규식을 수행 할 수 있습니다 알고
SEARCH_TERM 우리가 찾고있는 용어입니다db.comments.find({text: {$regex: /.*SEARCH_TERM.*/i}});
.
regex를 통한 검색이 좋지 않은 것 같아서 더 좋은 방법이 있는지 궁금합니다. 색인 생성 또는 이와 같은 방법이 없습니다. 이러한 배열 한 후 인덱스를
{text: ["This", "is", "some", "Text"]}
{text: ["this", "is", "another", "text", "hehe"]}
과 :
내 생각은 어떻게 든 문서에서 텍스트를 토큰 화 할 수 있으므로이 같은 문서를했을 것입니다. 이 작업을 수행하는 더 좋은 방법이 있습니까?