Tabela Dinâmica Dinâmica no SQL Server

Olá eu tenho a tabela a seguir e eu quero girar o EcoYear para estar no topo, mas não há uma quantidade definida de anos e os anos poderiam começar a qualquer momento. Além disso, casos diferentes terão diferentes anos iniciais, então eu preciso disso para preencher 0 em vez de null.

CaseID EcoYear NetInv NetOil NetGas
38755   2006   123     2154         525 
38755   2007   123     2154         525 
38755   2008   123     2154         525 
38755   2009   123     2154         525 
38755   2010   123     2154         525 
38755   2011   123     2154         525 
38755   2012   123     2154         525 
38755   2013   123     2154         525 
38755   2014   123     2154         525 
38755   2015   123     2154         525 
38755   2016   123     2154         525 
38755   2017   123     2154         525 
38755   2018   123     2154         525 
38755   2019   123     2154         525 
38755   2020   123     2154         525 

Eu preciso da tabela para ficar assim:

CaseID Item 2006 2007 2008 2009 2010 2011 2012 2013 2014 2015 2016 2017 2018 2019 2020 
38755 NetInv
38755 NetOil
38755 NetGas

Isso foi feito originalmente com o Access usando uma crosstab.

questionAnswers(1)

yourAnswerToTheQuestion