Agrupar registros en rangos de 15 en 15 en SQL Server 2014

publicado por: Anonymous

Tengo la siguiente tabla:

TABLA1

Necesito un script que me retorne los datos de la siguiente forma a partir de FECHA_INGRESO y GETDATE():

RESULTADO ESPERADO

Yo puedo obtener la cantidad de registros, pero no tengo ni idea de como obtenerlos agrupados de 15 en 15. Espero me puedan ayudar. Gracias.

solución

Prueba con el siguiente script. A mi me funcionó. Ten en cuenta que “tabla_original” debe ser el nombre de la tabla sobre la que realizas la consulta. El detalle es el nombre de los rangos de dias…hice que comiencen con letras para poder ordenarlos facilmente.

    select COUNT(*) as cantidad_registros, rango_dias
    from (
    select case  
        when dias between 0 and 15 then 'a) 0 a 15'
        when dias between 16 and 30 then 'b) 16 a 30'
        when dias between 31 and 45 then 'c) 31 a 45'
        else 'd) mas de 45' end as rango_dias,
        dias
      from (

    select id, titulo, DATEDIFF(day, fecha_ingreso, GETDATE()) as dias
    from tabla_original) res) tabla
    group by rango_dias order by rango_dias;

Espero que te pueda ayudar!

Respondido por: Anonymous

Leave a Reply

Your email address will not be published. Required fields are marked *