On Thu, 29 Apr 2010 19:27:33 +0530 wrote >On Thu, Apr 29, 2010 at 01:13:40PM -0000, sandeep prakash dhumale wrote: >> Hello All, >> >> I am trying to get tsearch working for my application but I am facing a >> problem when alphabet 'Y' is the in the tsquery. >> >> can anyone please share some light on it. >> >> >> # SELECT 'hollywood'::tsvector @@ to_tsquery('holly:*'); >> ?column? >> ---------- >> f >> (1 row) >> >> SELECT 'hollywood'::tsvector @@ to_tsquery('holl:*'); >> ?column? >> ---------- >> t >> (1 row) >> >> >> It works when i put <> in y as below but i don't want to do it that way. >> >> SELECT 'hollywood'::tsvector @@ to_tsquery('holl<y>:*'); >> ?column? >> ---------- >> t >> >> Thanks in advance > >That is because the to_tsquery() normalizes the tokens. Here is >what I get from the default configuration: > >db=# select to_tsquery('holly:*'); > to_tsquery >------------ > 'holli':* >(1 row) > >db=# select to_tsquery('holl:*'); > to_tsquery >------------ > 'holl':* >(1 row) > >It is pretty easy to see why you see the behavior that you do. >Maybe you need to change your tsearch configuration to match what >you expect to happen. > >Regards, >Ken > > >-- >Sent via pgsql-general mailing list (pgsql-general@postgresql.org) >To make changes to your subscription: >http://www.postgresql.org/mailpref/pgsql-general >
First of all thanks for your replies Tom and Ken, I am little newbie to Tsearch so I appologies if I sound a little confuse. Tom: If i do by casting like you wrote then i ran into case sensitivity issue also then it does not work for other searches I guess then it sees for exact matches and not normalize to lexims. Ken: As you said I need to change my configuration, It would be great if you can point me out where i can change that configuration and what about that <y> in the query how does it work, does that mean to explicitly include y in to_tsquery. All your help is higly appriciated. --Sandy