Re: optimizar consulta

From: Gabriel Ferro <gabrielrferro(at)yahoo(dot)com(dot)ar>
To: pgsql-es-ayuda(at)postgresql(dot)org
Subject: Re: optimizar consulta
Date: 2009-03-28 11:30:01
Message-ID: 14601.32564.qm@web52101.mail.re2.yahoo.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-es-ayuda


CREATE OR REPLACE FUNCTION padrones.buscarexacta_persona(nom text)
RETURNS SETOF respuesta_buscar_persona AS
$BODY$
DECLARE
RESPUESTA respuesta_buscar_persona%ROWTYPE;
nombusca text;

BEGIN
nombusca= regexp_replace( replace(REGEXP_REPLACE(trim(upper(nom)),'( ){2,}', ' '),' ','&'), E'[\\s\'|:&()!]+','&','g');
FOR RESPUESTA IN (
SELECT padrones.personas.clave AS clave
FROM padrones.personas,
to_tsquery('spanish',trim(nombusca)) AS q
WHERE vectornombre @@ q and
(trim(nombusca):: tsquery @@ regexp_replace( nombre, E'[\\s\'|:&()!]+',' ','g')::tsvector)
ORDER BY ts_rank_cd(vectornombre,q) DESC)
LOOP
RETURN NEXT RESPUESTA;
END LOOP;

RETURN;
END;
$BODY$
LANGUAGE 'plpgsql' VOLATILE
COST 100
ROWS 1000;

Yahoo! Cocina
Recetas prácticas y comida saludable
http://ar.mujer.yahoo.com/cocina/

In response to

Browse pgsql-es-ayuda by date

  From Date Subject
Next Message Edwin Perez 2009-03-28 17:34:21 Re: optimizar consulta
Previous Message Jaime Casanova 2009-03-28 01:18:26 Re: optimizar consulta