2010-11-29 83 views
0

我第一次嘗試了SQL Server 2005中的透視函數,並運行到獲取我期望的結果集的牆上。SQL Server 2005數據透視查詢幫助

我有兩個表defectsemployees。我試圖讓我的employee表中的員工發現所有缺陷,我不在乎分配給在員工表中輸入的人員的任何缺陷(我正在考慮加入它,但我沒有嘗試子查詢尚未認爲我需要)

我想得到的結果按(pivoted)defects.severity字段。我想在結果集中的領域是:severity, assigned to, employee.name, fix data

基本上我想根據缺陷

這裏嚴重級別根據病情輕重捲起數據並顯示計數是我的表:

CREATE TABLE [dbo].[Employees] 
(
    [EmployeeId] [int] NOT NULL, 
    [ManagerId] [int] NULL, 
    [NTID] [nvarchar](50) NOT NULL, 
    [FirstName] [nvarchar](50) NOT NULL, 
    [LastName] [nvarchar](50) NOT NULL, 
    [FullName] [nvarchar](100) NOT NULL, 
    [ReportingGroup] [nchar](10) NOT NULL, 
    [Added] [datetime] NOT NULL, 
    [LastUpdate] [datetime] NOT NULL, 
    [UpdateBy] [nvarchar](50) NOT NULL 
) 

CREATE TABLE [dbo].[defects] 
(
    [Defect ID] [float] NULL, 
    [SubSystem] [nvarchar](255) NULL, 
    [Status] [nvarchar](255) NULL, 
    [Severity] [nvarchar](255) NULL, 
    [FixDate] [nvarchar](255) NULL, 
    [Assigned To] [nvarchar](255) NULL, 
    [Summary] [nvarchar](255) NULL, 
    [Product List] [nvarchar](255) NULL, 
    [Development Type] [nvarchar](255) NULL, 
    [Defect Category] [nvarchar](255) NULL, 
    [Defect Cause] [nvarchar](255) NULL, 
    [Est Ready for Retest] [nvarchar](255) NULL, 
    [Fix Stage] [nvarchar](255) NULL, 
    [Planned Fix in Deployment Event] [nvarchar](255) NULL, 
    [Planned Fix in Event Mgmt Group] [nvarchar](255) NULL, 
    [Est Fixed Date] [nvarchar](255) NULL, 
    [Other Owner] [nvarchar](255) NULL 
) 
+1

`[缺陷ID] [浮點] NULL似乎不是主鍵(我認爲它應該是)的最佳選擇.....爲什麼** float ** ??爲什麼** NULL **?爲什麼在字段名稱空間???我寧願在所有情況下都使用[[DefectID] INT NOT NULL IDENTITY(1,1)`...) – 2010-11-29 16:00:05

+0

您是否希望在嚴重性上將您的結果排除在外? (如嚴重性的不同值應該是結果集的不同列),還是僅僅想按嚴重性GROUP?。此外,我沒有看到[修復數據]列,只是[FixDate] – Lamak 2010-11-29 16:10:02

回答

0

我這個SQL得到它:

select [Assigned To], [1-Urgent],[2-High],[3-Medium],[4-Low] 
from (select [assigned to],[Business Severity] from defects where [assigned to] is not null) D 
pivot 
(count([Business Severity]) for [Business Severity] in ([1-Urgent],[2-High],[3-Medium],[4-Low])) V 

感謝所有