ioseph=# create function text_soundexko(text) returns text
ioseph/# AS '/usr/local/pgsql/lib/modules/soundexko.so' LANGUAGE 'c';
created
ioseph=# create table s (nm text);
created
ioseph=# insert into s values ('파리의 봄은 헷갈리는 오렌지 빛이다');
INSERT 21876 1
ioseph=# select * from s where text_soundexko(nm)
ioseph/# like '%' || text_soundexko('빠리') || '%';
nm
////////////////////////////////////
파리의 봄은 헷갈리는 오렌지 빛이다
(1 row)
ioseph=# select * from s where text_soundexko(nm)
ioseph/# like '%' || text_soundexko('햇깔리는') || '%';
nm
////////////////////////////////////
파리의 봄은 헷갈리는 오렌지 빛이다
(1 row)
ioseph=# select * from s where text_soundexko(nm)
ioseph/# like '%' || text_soundexko('오랜지') || '%';
nm
////////////////////////////////////
파리의 봄은 헷갈리는 오렌지 빛이다
(1 row)
ioseph=# select * from s where text_soundexko(nm)
ioseph/# like '%' || text_soundexko('빗이다') || '%';
nm
////////////////////////////////////
파리의 봄은 헷갈리는 오렌지 빛이다
(1 row)
=====================================
테스트를 무사히 마쳤습니다.
문제는 한글의 각 자/모음 변화에 의한 soundex 기능은 제 실력으로는
도저히 불가능하더군요.(국어는 되는데, C가 안되서 /./)
소스 정리해서, 제 홈페이지에 걸어놓겠습니다.
|