>
> >> > gostaria de um retorno boolean para
> >> >
> >> > SELECT A=B=C=D=E=F=G=H.... é possível numa só declaração SQL sem sem
> >> > saber o
> >> > numero de elementos?
> >> >
> >> Seja mais específico... Qual o tipo dos elementos? Quem fornecerá esses
> >> elementos? Você montará esta consulta dinamicamente em uma linguagem de
> >> programação?
> >>
> >> world=# SELECT (1 = 2) and (1 <> 3);
> >>  ?column?
> >> ──────────
> >>  f
> >> (1 registro)
> >>
> >
> > Os elementos são NUMERIC, os elementos são campos de uma tabela e a
> consulta
> > não é dinâmica. Quero saber se são todos iguais então teorizei o select
> > acima citado.
> > Eu posso usar sua abordagem, apenas teorizei se era possível outra
> abordagem
> > apenas com operadores '=', já que é 'humanamente' lógico pois qualque
> > elemento diferente retornaria Falso.
>
>
> AFAICS, não faz parte da linguagem SQL esta sintaxe, entretanto o
> operador '='  recebe dois parametros
> o 'esquerda' e o 'direita', e o PostgreSQL converte isto para algo
> como pg_catalog.equal(direita, esquerda)
> o que acaba impossibilitando esta sintaxe também para o operador '='
>
> Mas voce pode fazer de outra maneira...
>
> postgres=# select a = ALL(ARRAY[a,b,c])  from (SELECT 1 as a, 2 as b,
> 3 as c, 1) as x;
>  ?column?
> ----------
>  f
> (1 row)
>
>
> postgres=# select a = ALL(ARRAY[a,b,c])  from (SELECT 1 as a, 1 as b,
> 1 as c, 1) as x;
>  ?column?
> ----------
>  t
> (1 row)
>
>
A função all realmente resolve e bem é limpa. apenas comentando a resposta
do Dickson:

Acha que seria algo interessante a se implementar? Visto que, como posso
fazer SELECT A+B+C+D+ETC...
seria um Ctrl+C e Ctrl+V no operador de soma (grosseiramente falando hehe).
-- 
Anselmo M. Silva
_______________________________________________
pgbr-geral mailing list
[email protected]
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral

Responder a