Oracle Text - Newbie
507076Nov 8 2006 — edited Nov 11 2006Hi,
I am using 10.2.0.2.0 EE on a Linux 64Bit. I am new to Oracle TEXT and based on my research realized that Oracle TEXT is best to use for our requirement.
We have a table with 50Million rows with a web based app.
A column in the table is in the following format
firstname@@lastname@@zipcode@@dateofBirth
We want to do the the search based on lastname,zipcode or sometimes lastname,zipcode,dob.
Front end filters and prepares the search string.
I decided to use the Oracle TEXT and did this so far.
Create table test_text(id number,data_column varchar2(2000));
CREATE INDEX test_indx ON test_text(data_column) INDEXTYPE IS
ctxsys.context PARAMETERS(TRANSACTIONAL)
Read that Transactional makes it automatic syncing of index.
I inserted bunch of records into it.
now, if I issue
select * from test_text where contains (data_column,'19',1)>0
(Not sure what exactly that 1 means there, if some one can tell me that would be great).
it does a like kind of search and shows where ever there is 19 in the record sets.
if I do,
select * from test_text where contains(data_column,'rob',1)>0
eventhough there is a record with Robert, it doesn't show up.
If I do
select * from test_text where contains(data_column,'robert',1)>0
then the record shows up.
I am confused and thinking that I am missing something here.
Also, we have a requirement to search by aliases like
Robert = bob
Michale = Mike
Thomas = Tom
How do I achieve that so that if the search string have Robert, search for all Bob's also.
Any help on these (lot of) questions is greatly appreciated.
Thx
Naren