SQL Server - resta de fechas

 
Vista:

resta de fechas

Publicado por Alvaro (2 intervenciones) el 27/06/2007 03:19:15
Buenas espero que puedan ayudarme!!, tengo el siguiente problema en SQL server. Tengo que calcular las cantidad de dias trabajados asumiendo que cada mes tiene 30 dias, en un rango de 6 meses.
Podria ser del 01/01/07 hasta el 30/06/07, pero si tengo una fecha de entrada el 15/05/07, con que funcion puedo calcular esa diferencia para saber la cantidad de dias trabajados que hay hasta el 30/06/07.

Gracias por tomar el tiempo y ver mi mensaje!!, espero que puedan ayudarme.

Alvaro
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:resta de fechas

Publicado por luishoracio (18 intervenciones) el 27/06/2007 19:51:25
Buenas tardes,

Puedes probar con la función datediff o con las funciones cast y convert para convertir, pero es mejor datediff.

Hasta pronto!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:resta de fechas

Publicado por Alvaro (2 intervenciones) el 27/06/2007 20:27:10
Muchas gracias!, por tu ayuda!, pero creo que aun no es suficiente!, porque no te entedi, se que hay una funcion datediff pero de que manera puede ayudarme con el problema.

Saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:resta de fechas

Publicado por Isaias (3308 intervenciones) el 28/06/2007 00:14:07
Si lees tu ayuda en linea, veras que DATEDIFF te puede obtener la diferencia de 2 fechas en AÑOS, MESES, DIAS HORAS, MINUTOS, SEGUNDOS, SEMANAS, TRIMESTRES

El ejemplo tuyo seria.

SELECT DATEDIFF(dd, FechaIni, FechaFin)

Te dira, cuantos dias han transcurrido entre la fecha inicial y fecha final, mas sin embargo, te convendria tener una tabla con los dias NO LABORALES.

Saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:resta de fechas

Publicado por fpincheira (1 intervención) el 08/01/2008 19:21:00
Hola
Un poco tarde pero si no te sirve a ti le servirá a otro que tenga el mismo problema, prueba esto

select DATEDIFF ( d , cast('20080101' as datetime) , cast('20080301' as datetime))

ahora algo mas complejo que invente antes de conocer el 'datediff'

select CONVERT(NUMERIC(18),(getDate()) - CONVERT(NUMERIC(18),(getDate()) ))

reemplaza los getDate() por las fechas en formato datetime, ahora si la fecha la tienes en varchar prueba esto un poco mas complejo

select CONVERT(NUMERIC(18),(CAST(fecha_fin AS dateTIME)-CAST(fecha_inicio AS dateTIME) ))

Es algo complejo y costoso para el motor, pero lo entenderás
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar