나는 영어로 된 원어민이 아니며 결과를 찾는 데 어려움을 겪을 수있는 전 세계 많은 사용자가 모여 있기 때문에 포럼 게시물이 있으며 기본적인 검색 기능을 향상시키고 싶습니다. 그들은 철자가 잘못되었습니다. 현재 포럼 검색은 정확합니다.soundex 기반 검색을 설계하는 가장 좋은 방법
어떤 디자인이 가장 좋을까요? 데이터베이스에 50 만 개의 레코드가 있고 검색이 자주 사용된다고 가정하십시오. 이상적으로는 모든 레코드를 검색하고 싶습니다.
디자인 측면을 따라
각 포럼 게시물, 나는 모든 SOUNDEX 데이터를 포함하는, soundex_post 저장합니다. 검색을 실행하면 모든 검색 용어가 표시되고 soundex 필드에 LIKE 연산이 수행됩니다.
디자인 두
나는 그것을 정상화. 모든 soundex 코드는 새 테이블 인 tblSoundexCodes에 저장됩니다. 그러면 표가 있습니다. tblForumPostSoundexCodes :
ID | Post_ID | SoundexCode_ID | 사운 덱스가 검색 될 때 단순히 빠른 상당히있을 것 SoundexCode_ID = N
이 있습니까 내가 그 방법 두 가지를 해결하는 모든 Post_IDs를 꺼내, 그리고
를 계산하지만, 열심히에 많이 될 것 유지 보수 (IE, 사람들이 게시물을 편집 할 때).
대상 데이터베이스가 무엇입니까? 오라클의 경우 soundex 검색이 이미 제공됩니다. –
@Frank는 MSSQL이며, 아마도 익스프레스 에디션 일뿐입니다. 예를 들어 soundex를 사용하여 아마도 최신 알고리즘을 구현할 것입니다 –