Foros del Web » Programando para Internet » ASP Clásico »

Problemas con Promedio de edad

Estas en el tema de Problemas con Promedio de edad en el foro de ASP Clásico en Foros del Web. Hola buenos dias a todos. Pregunta facilita: Estoy intentando calcular el promedio de edad de una serie de personas que tengo en una tabla con ...
  #1 (permalink)  
Antiguo 28/04/2009, 02:38
Avatar de chemita59  
Fecha de Ingreso: agosto-2005
Ubicación: Madrid
Mensajes: 107
Antigüedad: 19 años, 8 meses
Puntos: 0
Problemas con Promedio de edad

Hola buenos dias a todos.

Pregunta facilita:

Estoy intentando calcular el promedio de edad de una serie de personas que tengo en una tabla con su fecha de nacimiento.

la consulta que utilizo es la siguiente:

SELECT Datp.AÑO, Datp.MES, Avg(DateDiff(dd, [FCH_NACIM],'" & VAR3 & "' )) / 365.25 AS EdadMedia
FROM Datp GROUP BY Datp.AÑO, Datp.MES HAVING (((Datp.AÑO)='VAR1') AND ((Datp.MES)='VAR2'));


VAR3 es una fecha que construyo con los dias correspondientes al año "VAR1" y al Mes "VAR2".

Me da un errorr de sintaxis al convertir VAR3 a formato datetime.


Gracias por la ayuda.
  #2 (permalink)  
Antiguo 28/04/2009, 06:47
Avatar de Muzztein  
Fecha de Ingreso: agosto-2002
Ubicación: Hangar 18
Mensajes: 1.703
Antigüedad: 22 años, 8 meses
Puntos: 16
Respuesta: Problemas con Promedio de edad

SELECT Datp.AÑO, Datp.MES, Avg(DateDiff(dd, [FCH_NACIM],'" & VAR3 & "' )) / 365.25 AS EdadMedia
FROM Datp GROUP BY Datp.AÑO, Datp.MES HAVING (((Datp.AÑO)='"& VAR1 &"') AND ((Datp.MES)='"& VAR2 &"'));

ASI?????????



que valor trae VAR3?????


es una fecha?
  #3 (permalink)  
Antiguo 28/04/2009, 08:07
Avatar de chemita59  
Fecha de Ingreso: agosto-2005
Ubicación: Madrid
Mensajes: 107
Antigüedad: 19 años, 8 meses
Puntos: 0
Respuesta: Problemas con Promedio de edad

VAR3 trae el valor de NFecha construido de la siguiente forma:

<%

' VARIABLES PARA EL CALCULO DE LA EDAD MEDIA DE LOS TRABAJADORES

Application("nMes") = Request.Form("INDI_MES")
Application("nAnno") = Request.Form("INDI_ANIO")
Application("nAnnoAnt") = Application("nAnno ") - 1

if Application("nMes") = "02" then
Application("nDia") = 28
elseif Application("nMes") = "04" or Application("nMes") = "06" or Application("nMes") = "09" or Application("nMes") = "11" then
Application("nDia") = 30
else
Application("nDia")= 31
End If

Application("nFecha")= Application("nDia") & "/" & Application("nMes") & "/" & Application("nAnno")
response.Write(Application("nfecha"))

%>

El response.write muestra la fecha en pantalla en un formato correcto.

En el codigo que me has puesto sobra alguna comilla del tipo '

Saludos.
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:00.