[OT] ordenar datos recuerados mysql

12 views
Skip to first unread message

cesar barcia

unread,
Nov 4, 2017, 10:49:39 AM11/4/17
to CodeIgniter-spanish
hola gente como estan? tengo esta pregunta si me pueden dar una mano, estoy haciendo un sistema de reservas y tengo varios registros, tema que siempre ordeno resultado segun order by desc o asc del campo id o fecha... pero ahora necesito ordenar por fecha pero de la mas cercana a la actual(hoy) y de forma desc hacia la mas leja de "hoy"

como podria hacer este tipo de orden? no me sirve ordenar por id o por fecha de creacion del registro, tengo un campo "checkin" y necesito ordenar de forma que los registros sean los mas cernos a ese campo.. ya sea los anteriores a esa fecha checkin o posteriores pero cercanos tambien.

muchas gracias desde ya.

Carlos Romero

unread,
Nov 4, 2017, 11:15:42 AM11/4/17
to CodeIgniter-spanish
Timestamp

cesar barcia

unread,
Nov 4, 2017, 12:05:12 PM11/4/17
to CodeIgniter-spanish
esta bien gracias por ahi va el tema pero como se plasma en la sql?

id  |  checkin
1      05/11/2017
2      06/11/2017
3      01/01/2018
4      22/12/2017
5      30/03/2018
6      05/10/2017
7      10/05/2017
8       03/11/2017

necesitaria me los ordene por mayor proximidad a "hoy"(fecha de hoy 11/04/2017)

id  |  checkin
1      05/11/2017
8      03/11/2017
2      06/11/2017
4      22/12/2017
6      05/10/2017
7      10/05/2017
3      01/01/2018
5      30/03/2018

algo seria un egemplo.. es como un condicional en el order by lo que necesito?


El sábado, 4 de noviembre de 2017, 12:15:42 (UTC-3), Carlos Romero escribió:
Timestamp

Alexandro Arauco

unread,
Nov 4, 2017, 4:26:04 PM11/4/17
to codeignit...@googlegroups.com

Se me ocurre algo asi order by if (fecha < date(now),1, 2)


--
Antes de responder revisa: http://es.wikipedia.org/wiki/Netiquette
Regístrate en el Censo CI: http://bit.ly/miembroscodeigniteres
---
Has recibido este mensaje porque estás suscrito al grupo "CodeIgniter-spanish" de Grupos de Google.
Para cancelar la suscripción a este grupo y dejar de recibir sus mensajes, envía un correo electrónico a codeigniter-spa...@googlegroups.com.
Para publicar en este grupo, envía un correo electrónico a codeignit...@googlegroups.com.
Visita este grupo en https://groups.google.com/group/codeigniter-spanish.
Para ver esta conversación en el sitio web, visita https://groups.google.com/d/msgid/codeigniter-spanish/4fa9dd24-0ff4-4656-87a2-e817504c83ef%40googlegroups.com.
Para acceder a más opciones, visita https://groups.google.com/d/optout.

Jorge Copia

unread,
Nov 5, 2017, 1:51:01 AM11/5/17
to codeignit...@googlegroups.com
Creo que te enriedas, es mejor poner manos al código y practicar.
select id, fecha from reservas where fecha >= 'una_fecha_valida' order by fecha asc ???

Donde una_fecha_valida es recomendable que no sea una función por performance.

Para cancelar la suscripción a este grupo y dejar de recibir sus mensajes, envía un correo electrónico a codeigniter-spanish+unsub...@googlegroups.com.
Para publicar en este grupo, envía un correo electrónico a codeigniter-spanish@googlegroups.com.

--
Antes de responder revisa: http://es.wikipedia.org/wiki/Netiquette
Regístrate en el Censo CI: http://bit.ly/miembroscodeigniteres
---
Has recibido este mensaje porque estás suscrito al grupo "CodeIgniter-spanish" de Grupos de Google.
Para cancelar la suscripción a este grupo y dejar de recibir sus mensajes, envía un correo electrónico a codeigniter-spanish+unsub...@googlegroups.com.
Para publicar en este grupo, envía un correo electrónico a codeigniter-spanish@googlegroups.com.

cesar barcia

unread,
Nov 6, 2017, 7:33:40 AM11/6/17
to CodeIgniter-spanish
Gracias por sus respuestas

creo viene mas por el lado que dice alexandro ya que si haces:

select id, fecha from reservas where fecha >= 'una_fecha_valida' order by fecha asc

estas dejando afuera los registros de ayer.. necesito obtener todos los registros pero con un orden particular que es con la fecha de checkin lo mas cerca a la fecha de "hoy" primero y los mas alejado que vallan hacia el fin del listado de los registros recuperado. 

Alexandro Arauco

unread,
Nov 6, 2017, 7:50:11 AM11/6/17
to codeignit...@googlegroups.com

Avisas si la ayuda te ha sido util, caso contrario para buscar otra alternativa


--
Antes de responder revisa: http://es.wikipedia.org/wiki/Netiquette
Regístrate en el Censo CI: http://bit.ly/miembroscodeigniteres
---
Has recibido este mensaje porque estás suscrito al grupo "CodeIgniter-spanish" de Grupos de Google.
Para cancelar la suscripción a este grupo y dejar de recibir sus mensajes, envía un correo electrónico a codeigniter-spa...@googlegroups.com.
Para publicar en este grupo, envía un correo electrónico a codeignit...@googlegroups.com.
Reply all
Reply to author
Forward
0 new messages