>Adams >--------------------------- >DECATUR 5 >NULL >NULL >NULL >SO MONROE >BERNE B >BERNE B >BERNE A >BERNE B >BERNE B >SO MONROE >SO MONROE >BERNE C >>
>Adams >--------------------------- >BERNE A >BERNE B >DECATUR 5 >SO MONROE >>
>>> >>>MailCounty Precinct >>>---------------------------- >>>Hancock WAR 035 >>>Hancock WAR 030 >>>Hamilton SPRING FARMS >>>Johnson WHITE RIVER 07 >>>Cass Logansport 02 >>>Hamilton NOBLESVILLE 09 >>>Hamilton BRENTWOOD >>>Hamilton LAW 007 >>>Hancock Brandywine 1 >>>Adams WEST ROOT >>>Adams WEST ROOT >>>>>>
>>>
>>>Adams Cass Hancock Hamilton Johnson
>>>==================================================================================
>>>WEST ROOT Logansport 02 Brandywine 1 BRENTWOOD WHITE RIVER 07
>>> WAR 030 SPRING FARMS
>>> WAR 035 NOBLESVILLE 09
>>> LAW 007
>>>
>>>
>>>>>use tempdb >>create table #Counties (MailCounty varchar(30), Precinct varchar(30)) >> >>insert into #Counties >>values >>('Hancock', 'WAR 035'), >>('Hancock', 'WAR 030'), >>('Hamilton', 'SPRING FARMS'), >>('Johnson', 'WHITE RIVER 07'), >>('Cass', 'Logansport 02'), >>('Hamilton', 'NOBLESVILLE 09'), >>('Hamilton', 'BRENTWOOD'), >>('Hamilton', 'LAW 007'), >>('Hancock', 'Brandywine 1'), >>('Adams', 'WEST ROOT'), >>('Adams', 'WEST ROOT') >> >>declare @Cols nvarchar(max), @SQL nvarchar(max) >> >>select @Cols = STUFF((select distinct ', ' + quotename(MailCounty) from #Counties order by ', ' + quotename(MailCounty) >>for XML path('')),1,2,'') >> >>set @SQL = 'select ' + @Cols + ' from (select *, DENSE_RANK() over (partition by MailCounty order by Precinct) as Rn >>from #Counties) X PIVOT (max(Precinct) FOR MailCounty IN (' + @Cols + ')) pvt' >> >>print @SQL -- to debug >> >>execute (@SQL)