Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   SQL (https://www.clubdelphi.com/foros/forumdisplay.php?f=6)
-   -   Se puede utilizar Order By por un trozo de una cadena (https://www.clubdelphi.com/foros/showthread.php?t=9426)

Jose Manuel 22-04-2004 23:06:29

Se puede utilizar Order By por un trozo de una cadena
 
Hola, quisiera saber si puedo ordenar una consulta SQL de la siguiente manera: Tengo un campo llamado REFERENCIA formado por "aaa-bbbbb-cc" y quisiera saber si puedo indicar que la consulta se ordene:
SUBSTR(REFERENCIA,9,2)+SUBSTR(REFERENCIA,1,8), es decir el resultado deberia ser "cc-aaa-bbbbb", donde "cc" es el año, este campo es del tipo texto.

Estoy trabajando con Dbase y Delphi 6.

Un saludo
Jose Manuel
.......................

fDatabase.q_pre.SQL.clear;
fDatabase.q_pre.SQL.add('Select * from PREGUNTA');
fDatabase.q_pre.SQL.add('order by SUBSTRING(REFERENCIA,9,2),
SUBSTRING(REFERENCIA,1,8) ');
fDatabase.q_pre.active:=true;

__cadetill 23-04-2004 00:23:19

creo que de forma directa no se puede (digo creo pq siempre meto la pata), pero de forma "indirecta" sí haciendo algo como:

Código:

select SUBSTRING(campo from 2 for 1), c.*
from tabla c
order by 1

Lo he probado en Paradox desde el SQL Explorer y funciona


La franja horaria es GMT +2. Ahora son las 16:50:33.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi