Re: Union

From: Alvaro Herrera <alvherre(at)commandprompt(dot)com>
To: Felipe Fernandez <ffdezrguez(at)tiscali(dot)es>
Cc: Postgresql <pgsql-es-ayuda(at)postgresql(dot)org>
Subject: Re: Union
Date: 2007-04-24 13:44:06
Message-ID: 20070424134406.GB4009@alvh.no-ip.org
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-es-ayuda

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.

In response to

  • Union at 2007-04-24 08:34:56 from Felipe Fernandez

Responses

  • Re: Union at 2007-04-28 04:00:13 from Victor Lopez

Browse pgsql-es-ayuda by date

  From Date Subject
Next Message Alvaro Herrera 2007-04-24 14:29:32 Re: Nuevas versiones corrigen problemas de seguridad
Previous Message Raúl Mero Moreira 2007-04-24 13:12:22 Re: Union