![]() |
![]() |
![]() |
![]() |
![]() |
FTP | ![]() |
![]() |
CCD | ![]() |
![]() |
Buscar | ![]() |
![]() |
Trucos | ![]() |
![]() |
Trabajo | ![]() |
![]() |
Foros | ![]() |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
![]() |
|
Herramientas | Buscar en Tema | Desplegado |
|
#1
|
||||
|
||||
Ayuda con SQL de manejo de fechas
Tengo una consulta del tipo:
donde FRAS_CONF1_DATA,FRAS_CONF2_DATA,FRAS_CONF3_DATA son timestamp. Lo que necesito es ordenar la consulta por estos 3 campos pero teniendo en cuenta que dependiendo del registro cualquiera de ellos puede ser el más antiguo. Alguien puede echarme una mano con esto?. Gracias de antemano. Un saludo. |
#2
|
||||
|
||||
No entiendo que quieres hacer.
¿Según el registro ordenar por un campo distinto o qué?
__________________
La Madurez se llama... ~~~Gaia~~~ |
#3
|
||||
|
||||
Haber si soy capaz de explicarlo bien...
Estos tres campos de fecha guardan el momento en que una factura fue conformada (dada como conforme) o no. Cada factura puede asignarse hasta un máximo de tres personas para que den la conformidad en cascada, es decir, si se asigna a dos personas la primera (FRAS_CONF1_DATA) no puede conformar hasta que está conformada por la segunda (FRAS_CONF2_DATA). Lo que necesito es recuperar las conformaciones producidas en los últimos 30 días, que es lo que hace el sql que puse en el anterior post, y después ordenar el resultado para que las que tuvieron un evento más reciente aparezcan arriba. Espero que ahora está más claro. Un saludo. |
#4
|
||||
|
||||
Sigo sin entenderte del todo, no sé si me he aclarado o me he confundido más.
Suponiendo que sea lo que yo he entendido. Tienes tres campo "fecha" y te interesa ordenar por la fecha (cualquiera de las tres) más baja
__________________
La Madurez se llama... ~~~Gaia~~~ |
#5
|
||||
|
||||
No se si te he entendido bien....
¿Quieres ordenar la consulta de forma que te ordene los registros, pero no por un campo, sino por el valor más antiguo (o nuevo) que exista en cualquiera de esos tres? ¿Es decir que el valor de ordenación sea el más antiguo/nuevo de los tres campos? Si es así, yo crearía un campo FECHA_CONF_CAL (que se calcule y mantenga por trigger) que almacene y que mantenga el más antiguo o más nuevo de los tres. Después sólo debes usar ese campo para las ordenaciones.
__________________
Germán Estévez => Web/Blog Guía de estilo, Guía alternativa Utiliza TAG's en tus mensajes. Contactar con el Clubdelphi ![]() P.D: Más tiempo dedicado a la pregunta=Mejores respuestas. |
#6
|
||||
|
||||
Cita:
Ya había pensado en esto pero pretendía hacerlo sin modificar la base de datos por lo que implicaría a efectos de actualización de todos mis clientes. Estoy probando la solución de ozsWizzard. Ya no me da errores, pero tampoco me devuelve ningún registro. En algún sitio me estoy equivocando. Ya os diré. Otra solución en la que habia pensado era en la de utilizar algo como un campo calculado en el que almacenar el valor más reciente de los tres. Pero no sabría como hacerlo. Sigo con la solución de ozsWizzard. Por cierto, si, has entendido perfectamente mi problema.Saludos. |
![]() |
|
|
![]() |
||||
Tema | Autor | Foro | Respuestas | Último mensaje |
Manejo de Fechas de vencimiento en delphi 7 | luisraad | Varios | 92 | 11-04-2013 23:33:40 |
Ayuda sobre manejo de fechas | francodelphi | Conexión con bases de datos | 12 | 27-10-2011 01:22:15 |
Manejo de Fechas en Firebird 2.1 | Jose Roman | SQL | 3 | 17-02-2009 17:15:03 |
Manejo de fechas | nazly | Varios | 2 | 14-03-2008 19:05:23 |
Manejo de fechas | Leogiro | OOP | 2 | 11-09-2004 00:22:39 |
![]() |
|