Làm cách nào bạn có thể tìm thấy tối đa một số cột được tạo trong bảng tổng hợp bằng truy vấn bảng pivot SQL Server 2008?Tối đa SQL của nhiều cột trong bảng tổng hợp
Given:
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
Các lựa chọn công bố trên có kết quả như sau:
ConsPrecinct_name Candidate1 NumVotes1 Candidate2 NumVotes2 Winning Candidate
CP01 DOUG 4 LATH 2 Needs Data
CP01 DOUG 2 LATH 4 Needs Data
Mục đích là để có 'Chiến thắng Candidate' lĩnh vực dân cư với tên ứng cử viên có số phiếu nhất trong trường NumVotes tương ứng.
+1 Để cung cấp DDL hữu ích cho người trả lời. –