Re: Tsearch - Mailing list pgsql-sql
From | Steve Midgley |
---|---|
Subject | Re: Tsearch |
Date | |
Msg-id | [email protected] Whole thread Raw |
In response to | Tsearch (PostgreSQL Admin <[email protected]>) |
List | pgsql-sql |
At 12:20 PM 6/12/2008, [email protected] wrote: >Date: Thu, 12 Jun 2008 08:47:44 -0400 >From: PostgreSQL Admin <[email protected]> >To: [email protected] >Subject: Tsearch >Message-ID: <[email protected]> > >this is a small sample of the data: > > short_desc >| long_desc > >----------------------------------------------------------+------------------------------------------------------------------------ > CHICKEN,BROILERS OR FRYERS,LEG,MEAT&SKN,CKD,FRIED,BATTER | Chicken, >broilers or fryers, leg, meat and skin, cooked, fried, batter > >Is the best method of search through this data full text search via >tsearch or some other method. I'm running version 8.3 > >say I want to search for chicken skin? > >Thanks for the advice, >J Having previously established myself as a non-expert on TSearch2, I hesitate to post, but I think your issue is data semantics more than search tool. How do you want your system to handle this psuedo data: Chicken broilers, pork skins Should that return a match for "chicken skins" or not? If your data are semantically stored such that any record that matches "chicken" and also matches "skin" refers to "the skins of chickens" (the actual meaning you are looking for), then you're going to have a relatively easy time of it. If not, you'll have to consider ways to code your data so that searches behave correctly. You could develop search / coding schemes that say things like "find all records with chicken and skin, where the following words do not appear between the words chicken and skin: beef, pork, cow, pig, etc.." Just some thoughts for you there. Best, Steve