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

colocar consulta de las primeras

Estas en el tema de colocar consulta de las primeras en el foro de Mysql en Foros del Web. lo que pasa es que tengo en una tabla una cantidad de productos de ventas los cuales se ordenan en forma desc poro necesito que ...
  #1 (permalink)  
Antiguo 29/09/2012, 10:47
Avatar de xlos_mas_pro  
Fecha de Ingreso: mayo-2011
Ubicación: Santiago
Mensajes: 359
Antigüedad: 13 años, 6 meses
Puntos: 11
colocar consulta de las primeras

lo que pasa es que tengo en una tabla una cantidad de productos de ventas los cuales se ordenan en forma desc poro necesito que una de los productos que esta como en la mitad siempre aparesca de los primeros como puedo hacer eso ?
  #2 (permalink)  
Antiguo 29/09/2012, 14:00
Colaborador
 
Fecha de Ingreso: marzo-2008
Ubicación: Cáceres
Mensajes: 3.735
Antigüedad: 16 años, 8 meses
Puntos: 300
Respuesta: colocar consulta de las primeras

Dos formas:
1) Con ORDER BY FIND_IN_SET. Observa que primero ordeno descendente y luego ascendente. La razón es que al valor '1' se le asigna la posición 1 y los demás registros se quedan con posición NULL, y dado que FIND_IN_SET ordena por posición, es necesario que los null pasen detrás de la posición 1. De ahí que primero el orden del find_in_set sea descendente y luego el orden para los valores distintos de 1 sea ascendente.

Código MySQL:
Ver original
  1. FROM `tutabla`
  2. ORDER BY FIND_IN_SET( campo, '1' ) DESC , campo ASC

2) con UNION ALL
Código MySQL:
Ver original
  1. (SELECT *
  2. FROM tutabla WHERE campo = 1)
  3. FROM tutabla WHERE campo !=1 ORDER BY campo)

Etiquetas: order_by, php, sql
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:06.