Re: Union

From: "Victor Lopez" <d01m01a2000(at)gmail(dot)com>
To: "Felipe Fernandez" <ffdezrguez(at)tiscali(dot)es>, Postgresql <pgsql-es-ayuda(at)postgresql(dot)org>
Subject: Re: Union
Date: 2007-04-28 04:00:13
Message-ID: ae043d070704272100r4a021d00r1917453a7a358a4e@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-es-ayuda

El 24/04/07, Alvaro Herrera <alvherre(at)commandprompt(dot)com> escribió:
> Felipe Fernandez escribió:
> > Tengo la siguiente consulta pero me dice que no existe la columna fecha(?)
> >
> > SELECT REFERENCIA,FOTO1,LOCALIDAD
> > FROM tabla1
> > WHERE FOTO1 != ''
> > AND ESTADO = 3
> > AND CATEGORIA IN (SELECT CODIGO FROM CATEGORIAS WHERE
> > GRUPO=6)
> > AND DESTACADO = TRUE
> > UNION
> > SELECT REFERENCIA,FOTO1,LOCALIDAD
> > FROM tabla1
> > WHERE FOTO1 != ''
> > AND ESTADO = 3
> > AND CATEGORIA IN (SELECT CODIGO FROM CATEGORIAS WHERE GRUPO=6)
> > AND DESTACADO = FALSE
> > ORDER BY FECHA DESC, HORA DESC LIMIT 1;
> >
> > ERROR: no existe la columna «fecha»
>
> Exacto, no existe la columna fecha. Puedes usar una subconsulta y poner
> el order by afuera:
>
> select referencia, foto1, localidad
> from (
> SELECT REFERENCIA,FOTO1,LOCALIDAD, fecha, hora
> FROM tabla1
> WHERE FOTO1 != ''
> AND ESTADO = 3
> AND CATEGORIA IN (SELECT CODIGO FROM CATEGORIAS WHERE GRUPO=6)
> AND DESTACADO = TRUE
> UNION ALL
> SELECT REFERENCIA,FOTO1,LOCALIDAD, fecha, hora
> FROM tabla1
> WHERE FOTO1 != ''
> AND ESTADO = 3
> AND CATEGORIA IN (SELECT CODIGO FROM CATEGORIAS WHERE GRUPO=6)
> AND DESTACADO = FALSE
> ) foo
> ORDER BY FECHA DESC, HORA DESC LIMIT 1;
>
>
>
> En todo caso me parece que la consulta que tienes es un poco torpe.
> Quedaria mucho mejor asi:
>
> SELECT REFERENCIA,FOTO1,LOCALIDAD, fecha, hora
> FROM tabla1
> WHERE FOTO1 != ''
> AND ESTADO = 3
> AND CATEGORIA IN (SELECT CODIGO FROM CATEGORIAS WHERE GRUPO=6)
>
> --
> Alvaro Herrera http://www.CommandPrompt.com/
> The PostgreSQL Company - Command Prompt, Inc.
>
> ---------------------------(fin del mensaje)---------------------------
> TIP 6: ¿Has buscado en los archivos de nuestra lista de correo?
>
> http://archives.postgresql.org/pgsql-es-ayuda
>

Por interpretar ... yo interpreto que quiere que los destacados salgan
antes de los no destacados.

Pregunta :

ORDER BY DESTACADO ASC, ....
o
ORDER BY DESTACADO DESC, ...

¿?

Si lo reinterpretámos como numérico TRUE > FALSE, ya que 1>0.
Pero sin reinterpretaciones, que es mayor TRUE o FALSE ?

--
----o---( )---o----
Saludos de Victor Lopez Sabio
d01m01a2000(at)gmail(dot)com
--------oooo--------

In response to

  • Re: Union at 2007-04-24 13:44:06 from Alvaro Herrera

Responses

  • Re: Union at 2007-04-28 04:30:33 from Jaime Casanova

Browse pgsql-es-ayuda by date

  From Date Subject
Next Message Jaime Casanova 2007-04-28 04:14:34 Re: Optimizar Vista
Previous Message Victor Lopez 2007-04-28 03:42:39 Re: problema con el sort.