¿Cómo comparar el resultado de dos consultas?

From: Juan Daniel Santana Rodés <jdsantana(at)estudiantes(dot)uci(dot)cu>
To: pgsql-general(at)postgresql(dot)org
Subject: ¿Cómo comparar el resultado de dos consultas?
Date: 2013-09-17 05:26:26
Message-ID: 5237E802.9020008@estudiantes.uci.cu
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

Buenas...
Estoy desarrollando una tarea en la cual necesito saber cómo comparar el
resultado de dos consultas...
He pensado en crear un procedimiento el cual reciba por parámetros ambas
consultas respectivamente. Luego de alguna forma poder ejecutar las
consultas y devolver si ambas tienen el mismo resultado. Como
característica del problema, ambas consultas son de selección.
Acá dejo un pedazo del código de lo que quiero hacer.

create or replace function compare(sql1 character varying, sql2
character varying) returns boolean as
$body$
Declare
Begin
--acá de alguna manera poder ejecutar ambas consultas y luego conpararla
End;
$body$
language 'plpgsql';

He estado estudiando y me he encontrado de que existe EXECUTE pero para
usarlo, antes se debe haber usado PREPARE, y en este caso los valores de
los parámetros ya son consultas confeccionadas.
Por ejemplo la ejecución de la función sería algo como...

select compare('select * from table1', 'select * from table2');

Para este caso el resultado sería falso, pues las consultas son
ejecutadas sobre tablas distintas.
Gracias de antemano.
Saludos cordiales desde Cuba.
__________________________________________________
"Todos el 12 de Septiembre con una Cinta Amarilla"
FIN A LA INJUSTICIA, LIBERENLOS YA!!
http://www.antiterroristas.cu
http://justiciaparaloscinco.wordpress.com

Browse pgsql-general by date

  From Date Subject
Next Message Rémi Cura 2013-09-17 07:06:27 best practice for || set of rows --> function --> set of rows
Previous Message David Johnston 2013-09-17 05:00:42 Re: using Replace funcion in postgresql