Machetes Varios

apuntes varios erp cwa logic ( ahora SoftLand Logic ) – sql y veremos que otra cosa

Generando Periodos


Con la siguiente sentencia se generan “periodos” que van desde 199909 hasta el periodo correspondiente a la máxima fecha de la tabla VTRMVC

WITH PERIODOS ( PERIODO,PERIODOHASTA )
AS
( SELECT 199908 PERIODO,
( SELECT CAST(DATEPART(YEAR,MAX(VTRMVC_FCHMOV)) AS INTEGER )*100 + CAST(DATEPART(MONTH,MAX(VTRMVC_FCHMOV)) AS INTEGER ) FROM VTRMVC) PERIODOHASTA
UNION ALL
SELECT CASE WHEN CAST(RIGHT(PERIODOS.PERIODO,2) AS INTEGER ) < 12 THEN PERIODOS.PERIODO + 1
ELSE PERIODOS.PERIODO + 100 – 11
END,
PERIODOS.PERIODOHASTA
FROM PERIODOS
WHERE PERIODOS.PERIODO <= PERIODOS.PERIODOHASTA
)
SELECT PERIODO
FROM PERIODOS
OPTION (MaxRecursion 0)

julio 11, 2012 - Posted by | SQL Server, Transact SQL

Aún no hay comentarios.

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s

A %d blogueros les gusta esto: