Re: tsearch2() with data from other table - Mailing list pgsql-general

From Marcus Engene
Subject Re: tsearch2() with data from other table
Date
Msg-id 45548C72.4050703@engene.se
Whole thread Raw
In response to Re: tsearch2() with data from other table  (Teodor Sigaev <teodor@sigaev.ru>)
Responses Re: tsearch2() with data from other table
List pgsql-general
Teodor Sigaev skrev:
>> CREATE FUNCTION euits(int)
>> RETURNS text AS 'select username || \' \' || firstname || \' \' ||
>> lastname from site_user where objectid = $1;' LANGUAGE SQL;
>>
>> CREATE TRIGGER site_item_fts
>> BEFORE UPDATE OR INSERT ON site_item
>> FOR EACH ROW EXECUTE PROCEDURE
>> tsearch2(idxfti, name, keywords, keywords_cb, location_country,
>> location_city, media_source, description, euits, site_user);
>
> site_user is a table, isn't it?
> tsearch2 trigger accepts only column's names and functions with
> prototype TEXT func(TEXT).
>
> For clarify, show your table's definitions.

Hi,

I'm sorry I was unclear,

create table site_user
(
  objectid integer
,firstname varchar[60]
,lastname varchar[60]
,username varchar[10]
...
) without oids;


create table site_item
(
  objectid integer
,site_user integer -- fk to site_user.objectid
,description text
,idxfti tsvector
...
) without oids;

So, when updating site_item I want to fetch the names from site_user and
  give this data to tsearch2() along with other stuff from site_item.

Best regards,
Marcus

pgsql-general by date:

Previous
From: Alexander Staubo
Date:
Subject: Using GIN indexes on 8.2
Next
From: "Jeremiasz Miedzinski"
Date:
Subject: Re: [PL/pgSQL] Commit every N rows. Is it possible ?