Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General » Mysql »

Ordenar resultados (ORDER BY)

Estas en el tema de Ordenar resultados (ORDER BY) en el foro de Mysql en Foros del Web. Hola chicos, tengo un pequeño problemilla. Tengo una tabla en una base de datos llamada campanias que contiene diversa informacion, pero sólo paso a contarles ...
  #1 (permalink)  
Antiguo 22/06/2006, 19:42
 
Fecha de Ingreso: noviembre-2005
Ubicación: Córdoba - Argentina
Mensajes: 155
Antigüedad: 18 años, 5 meses
Puntos: 1
Ordenar resultados (ORDER BY)

Hola chicos, tengo un pequeño problemilla.
Tengo una tabla en una base de datos llamada campanias que contiene diversa informacion, pero sólo paso a contarles de lo que me interesa. Hay un campo (el principal) llamado "campania", en este se almacenan los siguientes datos:

4_507
6_509
4_508
2_507
19_507

Yo quiero realizar una consulta a la BD para que los resultados me salgan ordenados de menor a mayor. Primero dependiendo del numero anterioe al _ y luego al numero posterior del _

Es decir que me lo haga asi:

2_507
4_507
4_508
6_509
19_507


Yo hice la siguiente consulta:
Código PHP:
<?
$resultado
mysql_query("SELECT * FROM campanias ORDER BY campania ASC") or die ("Error de conexión: " mysql_error());
$totalmysql_num_rows($resultado);
?>
Desde ya, muchas gracias!


edit: edite el ejemplo, lo habia escrito mal

Última edición por nacho004; 23/06/2006 a las 12:08
  #2 (permalink)  
Antiguo 23/06/2006, 10:07
 
Fecha de Ingreso: mayo-2005
Ubicación: Murcia
Mensajes: 319
Antigüedad: 19 años
Puntos: 0
Prueba asi...

Código PHP:
<? 
$resultado
mysql_query("SELECT * FROM campanias ORDER BY campania") or die ("Error de conexión: " mysql_error()); 
$totalmysql_num_rows($resultado); 
?>
Creo que por defecto ya te los ordena ascendente...

Si no dimelo...
  #3 (permalink)  
Antiguo 23/06/2006, 10:13
 
Fecha de Ingreso: julio-2005
Mensajes: 86
Antigüedad: 18 años, 9 meses
Puntos: 3
Raules, él lo que quiere, es que se le ordene primero por los numeros de alante(507, 508) y luego los de atras (2,4,19,6)
habia pensado en un explode pero esque no se como ponerlo alli, es chungo...
  #4 (permalink)  
Antiguo 23/06/2006, 10:28
 
Fecha de Ingreso: mayo-2005
Ubicación: Murcia
Mensajes: 319
Antigüedad: 19 años
Puntos: 0
Y porque no pone primero la numeración con los 3 digitos y despues el unico digito y te ahorras complicaciones?

507_4
509_6
508_4
507_2
507_19

Pero bueno siempre y cuando haya una solucion bien será bienvenida, pero entonces yo ya no puedo ayudarte... lo siento
  #5 (permalink)  
Antiguo 23/06/2006, 11:47
 
Fecha de Ingreso: noviembre-2005
Ubicación: Córdoba - Argentina
Mensajes: 155
Antigüedad: 18 años, 5 meses
Puntos: 1
Chicos! ya logre lo que queria! en realidad el orden que yo buscaba era asi:

2_507
4_507
4_508
6_509
19_507

me equivoque al darles el ejemplo que buscaba, pero me puse a pensar porque no me funcionaba y me di cuenta que e ponia el 19 antes que cualquier otro porque comenzaba en 1, asique opte por hacer de doble digito el primer numero y de esa forma se me ordena perfecto.

02_507
04_507
04_508
06_509
19_507

Muchas gracias por sus respuestas!
  #6 (permalink)  
Antiguo 23/06/2006, 11:48
 
Fecha de Ingreso: mayo-2005
Ubicación: Murcia
Mensajes: 319
Antigüedad: 19 años
Puntos: 0
de nada y enorahuena
  #7 (permalink)  
Antiguo 23/06/2006, 11:57
Avatar de the_scorpion  
Fecha de Ingreso: mayo-2006
Ubicación: Cuba
Mensajes: 696
Antigüedad: 18 años
Puntos: 3
Hola
Se te puede ordenar con o sin (0) al principio, pero es una buena pregunta para los gurus, pero el 19_507 pertenece al grupo de los dos primeros de arriba, digo esto, si es que estas agrupando por los digidos despues de _ y ordenando por los de antes de _

saludos
__________________
Que hablen mal de uno es espantoso. Pero hay algo peor: que no hablen.
Quien hace, puede equivocarse. Quien nada hace, ya está equivocado".
  #8 (permalink)  
Antiguo 23/06/2006, 12:08
 
Fecha de Ingreso: noviembre-2005
Ubicación: Córdoba - Argentina
Mensajes: 155
Antigüedad: 18 años, 5 meses
Puntos: 1
Cita:
Iniciado por the_scorpion
Hola
Se te puede ordenar con o sin (0) al principio, pero es una buena pregunta para los gurus, pero el 19_507 pertenece al grupo de los dos primeros de arriba, digo esto, si es que estas agrupando por los digidos despues de _ y ordenando por los de antes de _
saludos
No, es que yo di mal el ejemplo, explique bien como lo queria pero me confundi al dar el ejmplo, yo queria que aparescan los resultados, de menor a mayor teniendo en cuenta al numero que esta antes del "_", y luego que tenga en cuenta el numero que va despues del "_".

Por ahora pude solucionarlo al problema de la manera que comente, pero seria bueno saber si hay alguna forma de realizar un order by teniendo en cuenta dos valores de un mismo campo.

Saludos!
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 22:57.