schools: learning_categories_by_year_for_state_and_grade

Custom SQL query returning 3 rows (hide)

with combined as (
select
  'disability_int' as column,
  sum(disability_int) filter (where year = 2015) as total_2015,
  sum(disability_int) filter (where year = 2016) as total_2016,
  sum(disability_int) filter (where year = 2017) as total_2017,
  sum(disability_int) filter (where year = 2018) as total_2018,
  sum(disability_int) filter (where year = 2019) as total_2019,
  sum(disability_int) filter (where year = 2020) as total_2020,
  sum(disability_int) filter (where year = 2021) as total_2021,
  (
    sum(disability_int) filter (where year = 2021)) - (sum(disability_int) filter (where year = 2020)
  ) as change_2020_2021,
  round(
    (1.0 * (
      sum(disability_int) filter (where year = 2021)) - (sum(disability_int) filter (where year = 2020))) /
      sum(disability_int) filter (where year = 2020) * 100,
  2) as percent_change
from enrollments
where state = :state
and grade = :grade
and term = :term
union
select
  'section_504_int' as column,
  sum(section_504_int) filter (where year = 2015) as total_2015,
  sum(section_504_int) filter (where year = 2016) as total_2016,
  sum(section_504_int) filter (where year = 2017) as total_2017,
  sum(section_504_int) filter (where year = 2018) as total_2018,
  sum(section_504_int) filter (where year = 2019) as total_2019,
  sum(section_504_int) filter (where year = 2020) as total_2020,
  sum(section_504_int) filter (where year = 2021) as total_2021,
  (
    sum(section_504_int) filter (where year = 2021)) - (sum(section_504_int) filter (where year = 2020)
  ) as change_2020_2021,
  round(
    (1.0 * (
      sum(section_504_int) filter (where year = 2021)) - (sum(section_504_int) filter (where year = 2020))) /
      sum(section_504_int) filter (where year = 2020) * 100,
  2) as percent_change
from enrollments
where state = :state
and grade = :grade
and term = :term
union
select
  'ell_int' as column,
  sum(ell_int) filter (where year = 2015) as total_2015,
  sum(ell_int) filter (where year = 2016) as total_2016,
  sum(ell_int) filter (where year = 2017) as total_2017,
  sum(ell_int) filter (where year = 2018) as total_2018,
  sum(ell_int) filter (where year = 2019) as total_2019,
  sum(ell_int) filter (where year = 2020) as total_2020,
  sum(ell_int) filter (where year = 2021) as total_2021,
  (
    sum(ell_int) filter (where year = 2021)) - (sum(ell_int) filter (where year = 2020)
  ) as change_2020_2021,
  round(
    (1.0 * (
      sum(ell_int) filter (where year = 2021)) - (sum(ell_int) filter (where year = 2020))) /
      sum(ell_int) filter (where year = 2020) * 100,
  2) as percent_change
from enrollments
where state = :state
and grade = :grade
and term = :term) select * from combined order by percent_change

Query parameters

Edit SQL

columntotal_2015total_2016total_2017total_2018total_2019total_2020total_2021change_2020_2021percent_change
disability_int                  
ell_int                  
section_504_int