none
problema con resta de fechas RRS feed

  • Pregunta

  • hola tengo la siguiente sentencia, pero me sale un error en conversion , requiero que me muestre los meses de antiguedad

    select

    'mes'=DATEDIFF(MM,CAST(CAST(fecha AS VARCHAR) AS nvarchar), '10/15/2011')
     from tabla WHERE LEN(fecha)=8

    creo que la data de la fecha esta distorcionada, por eso le pongo que la longitud sea=8, pero igual empieza a ejecutar y cuando parece que esta convirtiendo me sale este error

    Conversion failed when converting date and/or time from character string

    haber si alguien me ayuda. gracias !


    maculdes
    viernes, 14 de octubre de 2011 4:36

Respuestas

  • Si lo único que necesitas es mostrar la diferencia en meses entre dos fechas, la instrucción es más fácil que lo que estás poniendo. Sería algo como

    SELECT 'mes'=DATEDIFF(MM, fecha,'20111015')
    FROM tabla 
    


    Un par de apuntes:

    • entiendo que el campo "fecha" es de tipo fecha (DATETIME, SMALLDATETIME...)
    • para que no tengas problemas de conversión, usa siempre el formato YYYYMMDD en fechas porque SQL Server lo interpreta correctamente sea cual sea la configuración regional
    • no logro entender el objetivo del filtro que pones (LEN(fecha)=8)

     

    viernes, 14 de octubre de 2011 7:28

Todas las respuestas

  • Si lo único que necesitas es mostrar la diferencia en meses entre dos fechas, la instrucción es más fácil que lo que estás poniendo. Sería algo como

    SELECT 'mes'=DATEDIFF(MM, fecha,'20111015')
    FROM tabla 
    


    Un par de apuntes:

    • entiendo que el campo "fecha" es de tipo fecha (DATETIME, SMALLDATETIME...)
    • para que no tengas problemas de conversión, usa siempre el formato YYYYMMDD en fechas porque SQL Server lo interpreta correctamente sea cual sea la configuración regional
    • no logro entender el objetivo del filtro que pones (LEN(fecha)=8)

     

    viernes, 14 de octubre de 2011 7:28
  • ese filtro lo hago ya que en algunos campos la fecha es incorrecta o tiene menos de 8 caracteres
    maculdes
    viernes, 14 de octubre de 2011 13:52