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

Rango de fechas

Estas en el tema de Rango de fechas en el foro de SQL Server en Foros del Web. Hola tengo una duda lo que sucede es que quiero poner un rengo de fechasy no se como hacerle!! miren por ejemplo me gustaria poner ...
  #1 (permalink)  
Antiguo 01/02/2007, 09:30
Avatar de dianatorres  
Fecha de Ingreso: diciembre-2006
Mensajes: 26
Antigüedad: 17 años, 5 meses
Puntos: 0
Rango de fechas

Hola tengo una duda lo que sucede es que quiero poner un rengo de fechasy no se como hacerle!!

miren por ejemplo me gustaria poner el rango de un trimestre de un año , desde el sql ,digamos
si yo le doy como parametro la fecha asi:
@fechaini as datetime, este me trae (2005-01-06)
@fechafin as datetime y este me trae (2005-03-02)

por las fechas este seria un trimestre pero no se como hacer en el sql ? que entre y me diga con una variable digamos
@msg='trimestre'

que entre a un if y si la fecha entra en un rango '2005-01-01' y '2005-03-31'
pues es un trimestre @msg='trimestre'

otro que sea un if que si entra en el rango de '2005-01-01' y '2005-06-31'
sea un semestre @msg='Semestre' pero validando que si entra dentro del caso de ser trimestre
pues no me lo tome como semestre .y asi sucesivamente

vaya no se como seria la syntaxis en el SQL , la verdad le he intentado , tambien en el visual ,pero nomas no se me ocurre me lo podrian ayudar si?

Nota:le puese 2005 por dar un ejemplo ,lo que quiero es que el año pues sea dinamico de acuerdo a lo que me mande el como parametro
  #2 (permalink)  
Antiguo 01/02/2007, 09:44
 
Fecha de Ingreso: noviembre-2006
Ubicación: México
Mensajes: 866
Antigüedad: 17 años, 5 meses
Puntos: 8
Re: Rango de fechas

Hola Diana.

Espero haber entendido tu caso. Lo que entedí fue, quieres que dadas dos fechas te diga si el rango corresponde a un trimestre o a un semestre.

Entoces puedes hacer con la función datediff para meses, por ejemplo:

select datediff(mm, '20050106' , '20050302' ) , da como resultado dos y eso indica un trimestre.


select datediff(mm, '20050106' , '20050602' )
, da como resultado cinco y eso indica un semestre.

¿Qué te parece la idea?

Saludos y suerte!
  #3 (permalink)  
Antiguo 01/02/2007, 16:22
Avatar de dianatorres  
Fecha de Ingreso: diciembre-2006
Mensajes: 26
Antigüedad: 17 años, 5 meses
Puntos: 0
Re: Rango de fechas

gracias tu idea me sirvio muchooo !!!1
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 06:35.