Ver Mensaje Individual
  #1 (permalink)  
Antiguo 15/03/2010, 15:52
Avatar de ghidalgoram
ghidalgoram
 
Fecha de Ingreso: marzo-2008
Ubicación: Costa Rica
Mensajes: 446
Antigüedad: 16 años, 8 meses
Puntos: 7
Función ó variables para usar 'ORDER BY' ?

Ho la amigos.

Tengo una tabla de mi base de datos a la que llamaré "tabla_bd".

Y "tabla_bd" tiene una llave foránea a la que llamaré "fk_int_campo" y es de tipo integer. Es de tipo integer porque guarda la llave primaria de otra tabla con la que se encuentra relacionada. A esta segunda le llamaremos "tabla_relacionada".


Mi problema es al ordenar los registros de "tabla_bd".

Para ordenar, debo hacerlo por medio "fk_int_campo". Como es numérico, sé que sería muy sencillo tan solo poner.

Código SQL:
Ver original
  1. SELECT * FROM tabla_bd WHERE .... ORDER BY fk_int_campo DESC

Solo que a mi no sirve así.

Dependiendo si es ASC Ó desc, 'fk_int_campo' me lo ordenaría así:

1
2
3
4
5


ó

5
4
3
2
1

Yo necesito establecerle un orden que me lo ordeme por ejemplo:
3
1
4
5
2


Entonces, que en los registros primero sea ordenado por los que tienen 3,,, luego los que tienen 1, luego 4, luego 5 y por último 2.

Existe alguna forma de "decirle" al SQL que me lo ordene así.

Yo intenté así:

Código SQL:
Ver original
  1. SELECT * FROM tabla_bd WHERE .... ORDER BY fk_int_campo IN(3,1,4,5,2) DESC

Pero la verdad no me ordena como necesito.

Agradezco sus sugerencias ó ayuda.
Saludos
__________________
Loading...