PDA

Ver la Versión Completa : Especificar el índice en SQL como un parámetro


Tio
18-06-2003, 11:03:33
¿se puede pasar a una SQL el índice por el que ordenar como si de
un parámetro se tratase?. es decir, algo como esto:


select Nombre, apellidos, dni from clientes
order by :indice

Me gustaría hacer algo de esto pero no lo consigo, ¿alguna idea?,.


¡Gracias!

marcoszorrilla
18-06-2003, 12:53:21
Si puedes, de tipo texto. Puedes pasar un parámetro o una variable.

Un Saludo.

chutipascal
18-06-2003, 13:35:26
Puedes hacer algo por el estilo


query1.close;
Query1.Sql.Clear;
Query1.Sql.Add('select Nombre, apellidos, dni from clientes
order by ');
if nombre=true then
Query1.Sql.Add('nombre')
else
Query1.Sql.Add('apellidos');
Query1.Open;


Y ya ta.

Un saludo.

marcoszorrilla
18-06-2003, 15:39:53
También puedes presentar el nombre de todos los campos candidatos a índice en un Combo y según lo que elijan añadirlo al Query, mas menos como te indica ChutiPascal.

Un Saludo.

Tio
19-06-2003, 02:36:02
Muchas gracias!

Osea, que la solución mejor es la de crear la consulta SQL en tiempo de ejecución. Básicamente es equivalente a pasar un parámetro solo que en este caso el parámetro es la consulta.

Bueno, que estoy muy agradecido por tan pronta respuesta!... como siempre, me aclarais la ideas !.


Mil gracias!