Re: [Pgsql-ayuda] Ordenaci Łn de fechas con fechas nulas

From: "Terry Yapt" <pgsql(at)technovell(dot)com>
To: hostmaster(at)bemarnet(dot)es
Cc: pgsql-ayuda(at)tlali(dot)iztacala(dot)unam(dot)mx
Subject: Re: [Pgsql-ayuda] Ordenaci Łn de fechas con fechas nulas
Date: 2003-05-17 16:35:52
Message-ID: 1053189352.81a4c98pgsql@technovell.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-es-ayuda

No he podido probarla, pero creo que funcionara y seguro que puedes optimizar algunas cosas:

===========
SELECT
A.id_cliente
,B.ultimo
,COALESCE(B.ultimo,DATE('01/01/0001')) AS ordenacion
FROM
clientes A INNER JOIN (SELECT
B.id_cliente
,MAX(B.fecha) AS ultimo
FROM pedidos B
GROUP BY
B.id_cliente) AS B
ON B.id_cliente = A.id_cliente
WHERE
A.poblacion ILIKE '%albacete%'
ORDER BY
ordenacion DESC;
===========

Saludos.

-----Original Message-----
From: Antonio Navarro Navarro <hostmaster(at)bemarnet(dot)es>
To: pgsql-ayuda(at)tlali(dot)iztacala(dot)unam(dot)mx
Date: Fri, 16 May 2003 09:17:02 +0200
Subject: [Pgsql-ayuda] OrdenaciŁn de fechas con fechas nulas

Buenos das,

Tengo una consulta sencilla que obtiene una serie de datos de dos
tablas :

SELCT id_cliente, (SELECT MAX(fecha) FROM pedidos WHERE pedidos.id_cliente=
clientes.id_cliente) AS ultimo FROM clientes WHERE clientes.poblacion
ILIKE '%albacete%' ORDER BY ultimo DESC;

Los datos que obtiene son un cŁdigo de cliente y la fecha del Șltimo
pedido que este cliente haya realizado.

Por defecto aparecen en primer lugar los registros que no tienen
ningȘn pedido realizado, de esta forma :

id_cliente | ultimo
------------+---------------------
01395 |
37120 |
99687 | 2003-04-17 00:00:00
06701 | 2002-11-14 00:00:00
06525 | 2002-03-26 00:00:00

Yo quiero que se mantenga la ordenaciŁn pero que los pedidos con fecha
en blanco aparezcan al final, es decir :

id_cliente | ultimo
------------+---------------------
99687 | 2003-04-17 00:00:00
06701 | 2002-11-14 00:00:00
06525 | 2002-03-26 00:00:00
01395 |
37120 |

El problema es que no puedo aplicar ninguna funciŁn al campo 'ultimo'
para, por ejemplo ordenar de esta forma :

ORDER BY (ultimo IS NOT null), ultimo DESC

Postgres me dice que no encuentra el atributo :

ERROR: Attribute "ultimo" not found

¿ A alguien se le ocurre una forma de realizar la consulta ?

Un saludo,

Antonio

_______________________________________________
Pgsql-ayuda mailing list
Pgsql-ayuda(at)tlali(dot)iztacala(dot)unam(dot)mx
http://tlali.iztacala.unam.mx/mailman/listinfo/pgsql-ayuda

Browse pgsql-es-ayuda by date

  From Date Subject
Next Message Alvaro Herrera 2003-05-17 17:27:03 Re: [Pgsql-ayuda] Seguimos con el motor de Postgres
Previous Message sandrigo lezcano 2003-05-17 14:04:13 [Pgsql-ayuda] gracias Martin y otra "Tuneles SSH, SSL"