Ver Mensaje Individual
  #1 (permalink)  
Antiguo 16/11/2009, 02:23
radge
 
Fecha de Ingreso: enero-2004
Ubicación: here I Am
Mensajes: 437
Antigüedad: 21 años
Puntos: 1
Fechas en SQL server

Buenas estoy haciendo una consulta que intento hacer lo siguiente :

a) Debo saber si estoy en el 1º o 2º semestre del año

Esto con un condicional no hay problema

set @mesActual = month(getdate());

IF (@mesActual<=6)
...
else
...

b) Una vez estoy en el 1º semestre del año rellenar 2 variable así
@FechaInicial = '01/01/2009'
@FechaFin = '31/06/2009'

Si estoy en el 2º semestre
@FechaInicial = '07/01/2009'
@FechaFin = '31/12/2009'

Solo se me ocurre haciendo 1 montón de operaciones del tipo
- Buscar del mes que hago el corte "es decir" del mes 6 o del mes 12 el ultimo dia de ese mes y construir la cadena a pelo.

Tengo estas cadenas que he sacado de URL's , la a) me sirve pero la b) no consigo modificar la a mi gusto.

a) dia del mes : SELECT DATEADD(mm, DATEDIFF(mm,0,getdate()), 0) <= esta me sirve
b) Ultimo dia PERO del año anterior SELECT dateadd(ms,-3,DATEADD(yy, DATEDIFF(yy,0,getdate() ), 0)) <== esta no se que parametro tocar para que me coja el ultimo dia del mes PERO del año actual

Se os ocurre como hacerlo?

salu2 radge
__________________
Nuevo foro sobr el mundo del motor - Renault foro
http://www.renaultforo.com

Última edición por radge; 16/11/2009 a las 02:35