안녕하세요 오늘도 궁금한점이 생겨 이렇게 질문을 남겨봅니다.
사용자가 입력한 주소와 데이터베이스에 등록된 주소가 유사한지를 살펴보고자 합니다.
데이터베이스에스는 간단하게 예를들어
address 필드에 "제주특별자치도 제주시 조천읍 중산간동로" 라는 주소지가 입력되어 있고
사용자가 입력한 값에는 "제주특별자치도 제주시 조천읍 중산간동로 100 (송천동2가, 송천시영아파트)" 라고 되어있을 때
사용자가 입력한 값은 address 필드에 있는 "제주특별자치도 제주시 조천읍 중산간동로" 값에 중산간동로 까지 일치하기 때문에 특정 값을 출력해야합니다.
같은 예로
address필드에 "전라북도 전주시 덕진구 와룡로" 라고 입력되어있고
사용자가 입력한 값은 "전라북도 전주시 덕진구 와룡로 100 (송천동1가, 신일아파트)" 라고 한다면 이 역시 데이터베이스에 있는 값과 "와룡로"까지가 유사하기 때문에 특정 값을 출력해야 합니다.
혹시 이런 경우라도 Mysql에서 확인이 가능할까요 ?
LEVENSHTEIN() 함수를 사용해보려 했으나 버전이슈때문인제 사용이 불가능한 상황입니다!
읽어주셔서 감사합니다.
앞 글자가 똑같은 걸 찾는 것은 간단합나다.
LIKE 이용하면 됩니다.
WHERE '입력주소' LIKE CONCAT(address, '%')
다만 유사한 걸 찾는 것은 기본 구문만으로는 어려울 듯 하네요.
LEVENSHTEIN() 함수는 검색을 해보니
MySQL 버전 이슈가 아니라 사용자 함수를 직접 만드셔야 합니다.
검색하니 나오네요.
https://blog.naver.com/kbw0104/223123398593