fecha con campo en segundos a partir del 1/1/1601

09/11/2004 - 20:12 por juan carlos angelucci | Informe spam
Gente estoy trabajando con un equipo de telefonia ip que guarda los datos de
inicio y fin de las llamadas en segundos contando desde el 1/1/1601, como el
programa no se puede modificar estoy buscando la forma de armar un select
que realize la cuenta directamente.

pense en:

Select dateadd(second, cast(ConnectTime as decimal),cast('1/1/1601' as
datetime)) as datecdr from basecdr

pero no funciona da el siguiente error

Select dateadd(second, cast(ConnectTime as decimal),cast('1/1/1601' as
datetime)) as datecdr from basecdr

aparentemente el problema esta en que 1601 no es un año valido para el
datetime, pero no encuentro forma de resolver esto sin tener que hacer algo
mas complejo.

alguna sugerencia?
 

Leer las respuestas

#1 juan carlos angelucci
09/11/2004 - 20:30 | Informe spam
Perdon, el error es

The conversion of a char data type to a datetime data type resulted in an
out-of-range datetime value.

el campo ConnectTime es un campo varchar(64)

Gracias!

"juan carlos angelucci" wrote in message
news:%
Gente estoy trabajando con un equipo de telefonia ip que guarda los datos


de
inicio y fin de las llamadas en segundos contando desde el 1/1/1601, como


el
programa no se puede modificar estoy buscando la forma de armar un select
que realize la cuenta directamente.

pense en:

Select dateadd(second, cast(ConnectTime as decimal),cast('1/1/1601' as
datetime)) as datecdr from basecdr

pero no funciona da el siguiente error

Select dateadd(second, cast(ConnectTime as decimal),cast('1/1/1601' as
datetime)) as datecdr from basecdr

aparentemente el problema esta en que 1601 no es un año valido para el
datetime, pero no encuentro forma de resolver esto sin tener que hacer


algo
mas complejo.

alguna sugerencia?


Preguntas similares