Ver Mensaje Individual
  #5 (permalink)  
Antiguo 08/11/2010, 09:12
leonardo_josue
Colaborador
 
Fecha de Ingreso: enero-2007
Ubicación: México
Mensajes: 2.097
Antigüedad: 17 años, 10 meses
Puntos: 447
Respuesta: función DATEDIFF

Hola andrew14, el problema es que estás tratando de combinar valores enteros con valores tipo caracter. La función datediff regresa un valor entero, pero tú en la condición del isnull estás tratando de asignar un valor tipo cadena, puedes solucionar esto de dos maneras:

Código SQL:
Ver original
  1. --declaramos una variable tipo fecha.
  2. DECLARE @fecha datetime;
  3.  
  4. --si la fecha es nula
  5. --Asignando un valor entero (0) a tu función isnull
  6. SELECT ISNULL(DATEDIFF(DD, @fecha, GETDATE()), 0)
  7. --Convirtiendo el valor entero que regresa datediff a tipo cadena
  8. SELECT ISNULL(CAST(DATEDIFF(DD, @fecha, GETDATE()) AS VARCHAR), 'VALOR QUE QUIERAS ASIGNARLE')
  9.  
  10. --Si la fecha no es nula
  11. SET @fecha = '20101101'
  12. --Asignando un valor entero (0) a tu función isnull
  13. SELECT ISNULL(DATEDIFF(DD, @fecha, GETDATE()), 0)
  14. --Convirtiendo el valor entero que regresa datediff a tipo cadena
  15. SELECT ISNULL(CAST(DATEDIFF(DD, @fecha, GETDATE()) AS VARCHAR), 'VALOR QUE QUIERAS ASIGNARLE')

Saludos
Leo