Hola rafaescalona
La función
DATEDIFF te sirve (entre otras cosas) para poder saber cuantos días han transcurrido entre dos fechas, puedes usar esto junto con una sentencia CASE WHEN para armar los rangos.
Código SQL:
Ver originalDECLARE @TuTabla TABLE (id INT, fec_ult_trasac datetime)
INSERT INTO @TuTabla VALUES (1, '2011-05-14')
INSERT INTO @TuTabla VALUES (2, '2011-06-10')
INSERT INTO @TuTabla VALUES (3, '2011-06-26')
INSERT INTO @TuTabla VALUES (4, '2011-01-01')
SELECT * FROM @TuTabla
SELECT id,
CASE WHEN datediff(DAY, fec_ult_trasac, getdate()) BETWEEN 1 AND 15 THEN 'entre 1 y 15 días' ELSE
CASE WHEN datediff(DAY, fec_ult_trasac, getdate()) BETWEEN 16 AND 31 THEN 'entre 16 y 31 días' ELSE
CASE WHEN datediff(DAY, fec_ult_trasac, getdate()) BETWEEN 32 AND 45 THEN 'entre 31 y 45 días' END END END
rango
FROM @TuTabla
aquí faltaría incluir cuando los rangos para cuando la diferencia sea menor o igual a 0 o cuando sea mayor a 45 es por eso que el último registro aparece como NULL es cuestión de que incluyas la condición o filtres la información.
Saludos