tsearch2 trigger alternative

From: Chris Gamache <cgg007(at)yahoo(dot)com>
To: pgsql-sql(at)postgresql(dot)org
Subject: tsearch2 trigger alternative
Date: 2004-02-24 18:58:06
Message-ID: 20040224185806.51777.qmail@web13802.mail.yahoo.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers pgsql-performance pgsql-sql pgsql-www

Tsearch2 comes with its own tsearch2 trigger function. You pass column names to
it, and it puts a vanilla tsvector into the column names in TG_ARGV[0] (zero
based, yes?). Not only can you pass column names to it, but you can pass simple
functions to it as well. This is magical to me. :)

I'm trying to figure out how to do the same thing, except instead of returning
a vanilla tsvector, I want to return a specially weighted tsvector. I've
created a function that can do this:

create or replace function name_vector (text) returns tsvector as '
select setweight(to_tsvector(substr($1,1,strpos($1,'',''))),''C'') ||
to_tsvector(substr($1,strpos($1,'','')+1,length($1)));
' language 'sql';

so...

Plain:

select to_tsvector('Einstein, Albert');
to_tsvector
-------------------------
'albert':2 'einstein':1

Weighted:

select name_vector('Einstein, Albert');
name_vector
--------------------------
'albert':2 'einstein':1C

Now, to somehow package that into a magical trigger function...

All the examples for creating trigger functions that I've found use static
column names, NEW and OLD ... I would like to create a generic trigger
function, as the tsearch2 trigger function does, to return the specially
weighted tsvector.

Its like a lighter to a caveman. Can anyone lend a hand?

CG

__________________________________
Do you Yahoo!?
Yahoo! Mail SpamGuard - Read only the mail you want.
http://antispam.yahoo.com/tools

In response to

Browse pgsql-hackers by date

  From Date Subject
Next Message Shelby Cain 2004-02-24 19:58:56 select statement against pg_stats returns inconsistent data
Previous Message Hans-Jürgen Schönig 2004-02-24 17:40:25 Re: [HACKERS] [SQL] Materialized View Summary

Browse pgsql-performance by date

  From Date Subject
Next Message Christopher Browne 2004-02-24 19:12:54 Re: [PERFORMANCE] slow small delete on large table
Previous Message Ed L. 2004-02-24 18:36:08 Re: [PERFORMANCE] slow small delete on large table

Browse pgsql-sql by date

  From Date Subject
Next Message Robert Treat 2004-02-24 21:48:49 Re: [HACKERS] [SQL] Materialized View Summary
Previous Message Hans-Jürgen Schönig 2004-02-24 17:40:25 Re: [HACKERS] [SQL] Materialized View Summary

Browse pgsql-www by date

  From Date Subject
Next Message Robert Treat 2004-02-24 21:48:49 Re: [HACKERS] [SQL] Materialized View Summary
Previous Message Hans-Jürgen Schönig 2004-02-24 17:40:25 Re: [HACKERS] [SQL] Materialized View Summary