Jak znaleźć maksimum kilku kolumn tworzonych w tabeli przestawnej przy użyciu kwerendy tabeli przestawnej SQL Server 2008?SQL max wielu kolumn w tabeli przestawnej
Dane:
create table ElectionResults_test
(
Total_Votes int,
Precinct_Name varchar(50),
Candidate_Name varchar(50)
)
insert into ElectionResults_test values (4,'CP01', 'DOUG')
insert into ElectionResults_test values (2,'CP02', 'DOUG')
insert into ElectionResults_test values (2,'CP01', 'LATHE')
insert into ElectionResults_test values (4,'CP02', 'LATHE')
SELECT Precinct_Name as ConsPrecinct_Name, 'DOUG' AS Candidate1, [DOUG] AS NumVotes1,
'LATHE' AS Candidate2, [LATHE] AS NumVotes2, 'Needs Data' as WinningCandidate FROM
(Select Total_Votes, Precinct_Name, Candidate_Name from [ELECTIONRESULTS_test])
as SourceTable pivot (sum(Total_Votes) for Candidate_Name in ([DOUG], [LATHE])) as PivotTable
Powyższy SELECT ma następujący wynik:
ConsPrecinct_name Candidate1 NumVotes1 Candidate2 NumVotes2 Winning Candidate
CP01 DOUG 4 LATH 2 Needs Data
CP01 DOUG 2 LATH 4 Needs Data
celem jest mieć pole "Zwycięstwo kandydata wypełnione nazwą kandydata, który ma najwięcej głosów w odpowiednim polu NumVotes.
+1 Za udostępnienie użytecznego pliku DDL dla podmiotów udzielających odpowiedzi. –