que tal forer@s:
veran, intento sacar la diferencia de dias entre dos fechas pero para esto necesito hacer los siguientes movimientos antes:
tengo 6 campos int:
anio_hasta
mes_hasta
dia_hasta
anio_desde
mes_desde
dia_desde
lo que tengo hacer es concatenarlos no? bueno pues hago esto:
anio_hasta+mes_hasta+dia_hasta as hasta
anio_desde+mes_desde+dia_desde as desde
ejemplo:
anio_hasta 2010
mes_hasta 1
dia_hasta 26
y pasa que obtengo :
hasta 2037
en lugar de concatenar lo esta sumando
despues intento ya hacerlo directo:
convert(datetime, anio_hasta+mes_hasta+dia_hasta)
y obtengo:
1905-07-15 00:00:00.000
una fecha loca
entonces pense en primero convertir a char los campos y luego concatenarlos:
cast(anio_hasta as CHAR(4))+cast(mes_hasta as CHAR(2))+cast(dia_hasta as CHAR(2))
y obtengo:
20108 3
va mejorando, pero ahora por ejemplo el dia que es 3 necesito que sea 03 no?
el caso es que cuando intento convertirlo a fecha me sale un error:
convert(datetime,cast(anio_hasta as CHAR(4))+cast(mes_hasta as CHAR(2))+cast(dia_hasta as CHAR(2)))
este es el error:
Conversion failed when converting date and/or time from character string.
se que para sacar la diferencia necesito algo asi:
DATEDIFF (day, convert(datetime, hasta),convert(datetime, desde)) as dias
como le hago?
gracias