Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General » SQL Server »

Como pasar un numero decimal como hora

Estas en el tema de Como pasar un numero decimal como hora en el foro de SQL Server en Foros del Web. Hola amigos tengo un problemita espero me puedan ayudar. lo q pasa es lo siguiente quiero pasar un numero decimal como hora. ejemplo si tengo ...
  #1 (permalink)  
Antiguo 02/04/2013, 15:25
 
Fecha de Ingreso: febrero-2013
Mensajes: 8
Antigüedad: 11 años, 2 meses
Puntos: 0
Pregunta Como pasar un numero decimal como hora

Hola amigos tengo un problemita espero me puedan ayudar. lo q pasa es lo siguiente quiero pasar un numero decimal como hora.
ejemplo
si tengo 3.5 esto seria igual ha 3:30(3 horas y medias)

entonces como puedo pasar un 3.5 a 3:30
3.75 a 3:45
3.25 a 3:15

Saludos espero me puedan ayudar

esto quiero hacerlo en sql server 2008

Última edición por xlancelotx; 02/04/2013 a las 15:26 Razón: falto texto de descripcion
  #2 (permalink)  
Antiguo 02/04/2013, 15:29
Avatar de Libras
Colaborador
 
Fecha de Ingreso: agosto-2006
Ubicación: En la hermosa perla de occidente
Mensajes: 7.412
Antigüedad: 17 años, 8 meses
Puntos: 774
Respuesta: Como pasar un numero decimal como hora

una funcion como tal, no creo que exista, deberias de hacer tu propia funcion con tus validaciones, esto para que lo necesitas??
__________________
What does an execution plan say to t-sql query? Go f**k yourself, if you are not happy with me
  #3 (permalink)  
Antiguo 02/04/2013, 15:34
 
Fecha de Ingreso: febrero-2013
Mensajes: 8
Antigüedad: 11 años, 2 meses
Puntos: 0
Respuesta: Como pasar un numero decimal como hora

Lo q pasa es q estoy haciendo una consulta para un informe y me di cuenta q el sistema registra las horas ingresadas en forma de números decimales. entonces al hacer una consulta el resultado son numeros decimal y el informe tengo q presentarlo como horas aver si me dan una mano estoy haciendo con un WHEN PATINDEX('%.%'
y separar despues del punto y de acuerdo a ello imprimir el resultado en horas pero al ser varias condiciones no se como hacerlo no se si pueden darme una ayudadita o una manera de hacerlo

Última edición por xlancelotx; 02/04/2013 a las 15:34 Razón: por error
  #4 (permalink)  
Antiguo 02/04/2013, 15:45
Avatar de Libras
Colaborador
 
Fecha de Ingreso: agosto-2006
Ubicación: En la hermosa perla de occidente
Mensajes: 7.412
Antigüedad: 17 años, 8 meses
Puntos: 774
Respuesta: Como pasar un numero decimal como hora

seguro que son decimales? ya revisaste el tipo de dato de la columna?

ya que si es un dato decimal puedes usar esto:

Código SQL:
Ver original
  1. DECLARE @var VARCHAR(20)
  2. DECLARE @entero VARCHAR(20)
  3. DECLARE @DECIMAL VARCHAR(20)
  4. DECLARE @valor DECIMAL(9,6)
  5. SET @var='3.75'
  6. SET @entero=''
  7. SET @DECIMAL=''
  8. SET @entero=SUBSTRING(@var,1,charindex('.',@var,1)-1)
  9. SET @DECIMAL=SUBSTRING(@var,charindex('.',@var,1),LEN(@var))
  10.  
  11.  
  12. SELECT @DECIMAL=CONVERT(VARCHAR(20),CONVERT(DECIMAL(9,2),@DECIMAL)*60)
  13. SELECT CONVERT(datetime,@entero + ':' + @DECIMAL)

saludos!
__________________
What does an execution plan say to t-sql query? Go f**k yourself, if you are not happy with me

Última edición por Libras; 02/04/2013 a las 15:57
  #5 (permalink)  
Antiguo 03/04/2013, 08:33
Avatar de leodp77  
Fecha de Ingreso: marzo-2013
Mensajes: 39
Antigüedad: 11 años, 1 mes
Puntos: 2
Respuesta: Como pasar un numero decimal como hora

Con una regla de 3 simple no haces lo mismo?
__________________
"La mejor forma de obtener información correcta de los foros de internet es enviar algo incorrecto y esperar las correcciones"
-- Matthew Austern
  #6 (permalink)  
Antiguo 03/04/2013, 08:45
 
Fecha de Ingreso: febrero-2013
Mensajes: 8
Antigüedad: 11 años, 2 meses
Puntos: 0
Respuesta: Como pasar un numero decimal como hora

si amigo es un campo numérico decimal, gracias por la respuesta es lo q buscaba. se agradece
  #7 (permalink)  
Antiguo 04/04/2013, 12:07
Avatar de iislas
Colaborador
 
Fecha de Ingreso: julio-2007
Ubicación: Mexico, D.F.
Mensajes: 6.482
Antigüedad: 16 años, 9 meses
Puntos: 180
Respuesta: Como pasar un numero decimal como hora

Es como guardar una fecha en un varchar y luego querer utilizar funciones de fecha, es un completo error este tipo de decisiones
__________________
MCTS Isaias Islas

Etiquetas: decimal, horas
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 13:55.