Re: Problema con ORDER BY

From: Alvaro Herrera <alvherre(at)2ndquadrant(dot)com>
To: Jose Ayala - CROMOTEX <jayala(at)cromotex(dot)com(dot)pe>
Cc: Hellmuth Vargas <hivs77(at)gmail(dot)com>, Ayuda <pgsql-es-ayuda(at)postgresql(dot)org>
Subject: Re: Problema con ORDER BY
Date: 2012-09-11 19:39:51
Message-ID: 1347392163-sup-4816@alvh.no-ip.org
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-es-ayuda

Excerpts from Jose Ayala - CROMOTEX's message of mar sep 11 16:08:19 -0300 2012:
> Gracias por la ayuda, queria ver si alguien podia resolverlo sin tener que
> hacer uso de otra funcion, solo con el order by clasico; leyendo por ahi me
> indicaban que el problema es la forma en la que se construyen los indices,
> y el order by usa estos indices;

Esa explicación no tiene sentido.

> asi que bueno yo lo solucione asi:
>
> select codigo,nombre from mitabla
> ORDER BY ascii(nombre)

Hm. Creo que si estás en una versión que soporte COLLATION, es mejor
usar eso, porque el ascii() puede fallar en ciertos casos. Tomando el ejemplo
de Hellmuth:

alvherre=# select
* from
(values(100,'JUAN'),(200,'LUCHO'),(300,'ARMANDO'),(400,'_JOSE'),(500,'_adrian'))
as a(codigo, nombre)
order by a.nombre collate "C";
codigo | nombre
--------+---------
300 | ARMANDO
100 | JUAN
200 | LUCHO
400 | _JOSE
500 | _adrian
(5 filas)

eso es lo que quieres, ¿no?

--
Álvaro Herrera http://www.2ndQuadrant.com/
PostgreSQL Development, 24x7 Support, Training & Services

In response to

Responses

Browse pgsql-es-ayuda by date

  From Date Subject
Next Message Omar Beltrán Cano 2012-09-11 20:05:13 Extraños rollback
Previous Message Jose Ayala - CROMOTEX 2012-09-11 19:08:19 Re: Problema con ORDER BY