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

Ayuda con fechas en sql server 2000

Estas en el tema de Ayuda con fechas en sql server 2000 en el foro de SQL Server en Foros del Web. Buenas estoy desarrollando una aplicacion con php y sql server, lo que pasa es que necesito hacer aritmetica de fechas, restar las fechas y me ...
  #1 (permalink)  
Antiguo 19/08/2008, 07:15
 
Fecha de Ingreso: febrero-2008
Ubicación: Cajamarca-Peru
Mensajes: 68
Antigüedad: 16 años, 1 mes
Puntos: 0
Ayuda con fechas en sql server 2000

Buenas estoy desarrollando una aplicacion con php y sql server, lo que pasa es que necesito hacer aritmetica de fechas, restar las fechas y me diga cuantos años , meses y dias hay entre las fechas. Por ejemplo 19/08/2008 - 12/08/2008 me arroje 0 AÑOS, 0 MESES Y 7 DIAS. algo asi. ojala puedan ayudarme, ya probe con DATEDIFF pero no me funcione en la forma q yo deseo. GRACIAS DE ANTEMANO.
  #2 (permalink)  
Antiguo 19/08/2008, 07:18
Avatar de iislas
Colaborador
 
Fecha de Ingreso: julio-2007
Ubicación: Mexico, D.F.
Mensajes: 6.482
Antigüedad: 16 años, 9 meses
Puntos: 180
Respuesta: Ayuda con fechas en sql server 2000

Por ahi publique una rutina para calcular la EDAD, que bien podria servirte a ti:

SELECT
DATEDIFF(yy, [fecha_nac], getdate()) -
CASE
WHEN (MONTH(getdate()) * 100 + DAY(getdate())) <
(MONTH([fecha_nac]) * 100 + DAY([fecha_nac])) THEN 1 ELSE 0 END
from
dbo.empleados


--- Años, Meses, Dias
declare @años as integer
declare @meses as integer
declare @dias as integer
declare @fecha as datetime
declare @hoy as datetime

set @fecha = '19600407'
set @hoy = getdate()
set @años = datediff("yy", @fecha, @hoy)
if dateadd("yy", @años, @fecha) > @hoy set @años = @años - 1
set @fecha = dateadd("yy", @años, @fecha)
set @meses = datediff("mm", @fecha, @hoy)
if dateadd("mm", @meses, @fecha) > @hoy set @meses = @meses - 1
set @fecha = dateadd("mm", @meses, @fecha)
set @dias = datediff("dd", @fecha, @hoy)
set @fecha = dateadd("dd", @dias, @fecha)
print 'Tu edad es de ' + ltrim(str(@años)) + ' años ' + ltrim(str(@meses)) + ' meses y ' + ltrim(str(@dias)) + ' días.'
  #3 (permalink)  
Antiguo 19/08/2008, 07:28
 
Fecha de Ingreso: febrero-2008
Ubicación: Cajamarca-Peru
Mensajes: 68
Antigüedad: 16 años, 1 mes
Puntos: 0
Respuesta: Ayuda con fechas en sql server 2000

muchas gracias iislas, probare con lo que me haz proporcionado. , ya te informo si me resulto. TeNkS.
  #4 (permalink)  
Antiguo 19/08/2008, 08:47
 
Fecha de Ingreso: febrero-2008
Ubicación: Cajamarca-Peru
Mensajes: 68
Antigüedad: 16 años, 1 mes
Puntos: 0
Respuesta: Ayuda con fechas en sql server 2000

Amigo iislas la rutina funciona de maravilla jeje pero como la uso en mi consulta?.
  #5 (permalink)  
Antiguo 19/08/2008, 09:35
Avatar de iislas
Colaborador
 
Fecha de Ingreso: julio-2007
Ubicación: Mexico, D.F.
Mensajes: 6.482
Antigüedad: 16 años, 9 meses
Puntos: 180
Respuesta: Ayuda con fechas en sql server 2000

Dependera en mucho de la consulta que estes haciendo o bien, convierte la rutina que publique en FUNCION (UDF).
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 15:36.