From: | Igor Neyman <ineyman(at)perceptron(dot)com> |
---|---|
To: | Juan Daniel Santana Rodés <jdsantana(at)estudiantes(dot)uci(dot)cu>, "pgsql-general(at)postgresql(dot)org" <pgsql-general(at)postgresql(dot)org> |
Subject: | Re: How to compare the results of two queries? |
Date: | 2013-09-17 16:02:17 |
Message-ID: | A76B25F2823E954C9E45E32FA49D70EC4281FA98@mail.corp.perceptron.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-general |
> -----Original Message-----
> From: Juan Daniel Santana Rodés [mailto:jdsantana(at)estudiantes(dot)uci(dot)cu]
> Sent: Tuesday, September 17, 2013 11:54 AM
> To: Igor Neyman
> Subject: Re: [GENERAL] How to compare the results of two queries?
>
> El 17/09/13 11:27, Igor Neyman escribió:
> > create or replace function compare(sql1 character varying, sql2
> > character varying) returns boolean as $body$ Declare lCount int := 0;
> > Begin
> >
> > EXECUTE 'SELECT COUNT(Res.*) FROM ( (' || sql1 || ' EXCEPT ' || sql2
> > || ') UNION (' || sql2 || ' EXCEPT ' || sql1 || ') ) Res' INTO lCount; IF (lCount
> = 0)
> > RETURN TRUE;
> > ELSE
> > RETURN FALSE;
> > END IF;
> >
> > End;
> > $body$ language 'plpgsql';
>
> Hi, thank for your help...
> I'm trying to execute your code but, when I run the the sentence, it throw a
> exception.
> For example, I run this line...
>
> select compare('select * from point limit 2', 'select * from point');
>
> And, postgres throw the follow exceptio...
>
> ERROR: syntax error at or near "EXCEPT"
> LINE 1: ...COUNT(Res.*) FROM ( (select * from point limit 2 EXCEPT sel...
> ^
> QUERY: SELECT COUNT(Res.*) FROM ( (select * from point limit 2 EXCEPT
> select * from point) UNION (select * from point EXCEPT select * from point
> limit 2) ) Res
> CONTEXT: PL/pgSQL function "compare" line 5 at EXECUTE statement
>
> ********** Error **********
>
> ERROR: syntax error at or near "EXCEPT"
> Estado SQL:42601
> Contexto:PL/pgSQL function "compare" line 5 at EXECUTE statement
>
"limit 2" does not work with "EXCEPT".
In the future reply to the list ("Reply All") in order to keep the list in the conversation.
Regards,
Igor Neyman
From | Date | Subject | |
---|---|---|---|
Next Message | Lonni J Friedman | 2013-09-17 16:19:29 | upgrade from 9.2.x to 9.3 causes significant performance degradation |
Previous Message | Adam C Falkenberg | 2013-09-17 15:51:52 | Re: Using ODBC and VBA to pull data from a large object |