Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Bases de datos > MySQL
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 07-12-2007
Avatar de enecumene
[enecumene] enecumene is offline
Miembro de Oro
 
Registrado: may 2006
Ubicación: Santo Domingo, Rep. Dom.
Posts: 3.040
Poder: 21
enecumene Va por buen camino
Problema con consultas DateDiff

Hola Compañeros del foro, aqui vuelvo con un problema con una consulta DateDiff que me esta dando problemas, esta es la consulta:

Código SQL [-]
SELECT casa, factura, condicion, vence, occo, comentario, valor, recibo, fecha, detalle, dpto, status, datediff(fecha, curdate()),
CASE WHEN datediff(Curdate( ), fecha) < 15
THEN valor
ELSE 0
END AS dias15,
CASE WHEN datediff(Curdate( ), fecha )
BETWEEN 16
AND 30
THEN VALOR
ELSE 0
END AS dias30,
CASE WHEN datediff(Curdate( ), fecha)
BETWEEN 31
AND 45
THEN VALOR
ELSE 0
END AS dias45,
CASE WHEN datediff(Curdate( ), fecha)
BETWEEN 46
AND 60
THEN VALOR
ELSE 0
END AS dias60,
CASE WHEN datediff(Curdate( ), fecha)
BETWEEN 61
AND 90
THEN VALOR
ELSE 0
END AS dias90,
CASE WHEN datediff(Curdate( ), fecha)  > 90
THEN VALOR
ELSE 0
END AS mas90
FROM fondo where status = 'DEUDA' and condicion = 'Credito' order by fecha asc

La función de esta consulta es que calcula el tiempo que tiene una factura pendiente, o sea, 30 dias, 45 dias, 60 dias, etc. etc, aqui viene el problema, sucede hace dos dias las facturas que tenian fecha 2007-11-19 el valor aparecia en 0.00, al dia siguiente los de fecha 2007-11-20 aparecian en 0.00 pero los del 19 si tenian su valor ahora hoy los de fecha 2007-11-21 estan en 0.00, por que sucede eso? quien podra ayudarme?(Una de las frases del Chapulin Colorado).

Saludos.
__________________

Mi BLOG - ¡Joder, leanse la guia de estilo!
Las Palabras son enanas, los ejemplos gigantes.
Responder Con Cita
  #2  
Antiguo 07-12-2007
Avatar de enecumene
[enecumene] enecumene is offline
Miembro de Oro
 
Registrado: may 2006
Ubicación: Santo Domingo, Rep. Dom.
Posts: 3.040
Poder: 21
enecumene Va por buen camino
Bueno al parecer por el momento resolvi el problema cambiando una pequeña parte del codigo:

Código SQL [-]
SELECT casa, factura, condicion, vence, occo, comentario, valor, recibo, fecha, detalle, dpto, status, datediff(fecha, curdate()),
CASE WHEN datediff(Curdate( ), fecha)
BETWEEN 0 <--AQUI
AND 15    <--Y AQUI
THEN valor
ELSE 0
END AS dias15,
CASE WHEN datediff(Curdate( ), fecha )
BETWEEN 16
AND 30
THEN VALOR
ELSE 0
END AS dias30,
CASE WHEN datediff(Curdate( ), fecha)
BETWEEN 31
AND 45
THEN VALOR
ELSE 0
END AS dias45,
CASE WHEN datediff(Curdate( ), fecha)
BETWEEN 46
AND 60
THEN VALOR
ELSE 0
END AS dias60,
CASE WHEN datediff(Curdate( ), fecha)
BETWEEN 61
AND 90
THEN VALOR
ELSE 0
END AS dias90,
CASE WHEN datediff(Curdate( ), fecha)  > 90
THEN VALOR
ELSE 0
END AS mas90
FROM fondo where status = 'DEUDA' and condicion = 'Credito' order by fecha asc

Mañana veremos que sucede.

Saludos.
__________________

Mi BLOG - ¡Joder, leanse la guia de estilo!
Las Palabras son enanas, los ejemplos gigantes.
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Consultas con SQL luxus Conexión con bases de datos 6 26-06-2006 15:19:35
Consultas SQL V.S. Consultas Clipper AGAG4 SQL 7 20-12-2005 15:59:31
Sub-Consultas vtdeleon SQL 5 28-09-2005 21:46:05
Dos consultas en una Petolansa SQL 5 16-08-2005 07:39:48
Consultas silviodp Conexión con bases de datos 6 05-08-2004 23:44:24


La franja horaria es GMT +2. Ahora son las 11:09:53.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi