我被要求更改當前顯示一週結束日期,類別和按日期排列的一個星期的小時數據連續查詢。我被要求在行尾顯示註釋字段,我無法弄清楚如何改變查詢來做到這一點。T-SQL Pivot每週顯示一個評論字段
表的結構類似於本
Category Date Comments Hours
test 8/2/2010 myComment 2
test 8/3/2010 8
test 8/4/2010 4
test 8/5/2010 3
test 8/6/2010 5
我想要顯示的數據是這樣的。我有一個查詢,將除了評論以外的所有內容。在前端,我只允許每週發表一條評論,並將其添加到表格中的每週/類別組合的星期一日期行。
WeekEnding Category SunHrs MonHrs TuesHrs WedHrs ThuHrs FriHrs SatHrs Comment
8/7/2010 test 0 1 1 1 1 1 1 myComment
這是添加註釋字段,它工作正常之前的查詢。
DECLARE @WeekEnding datetime
DECLARE @UserName nvarchar(245)
SET @WeekEnding = '09/04/2010'
SET @UserName = 'brogers'
SELECT
@WeekEnding WeekEnding
,CategoryID
,isnull([1], 0) SunHrs
,isnull([2], 0) MonHrs
,isnull([3], 0) TueHrs
,isnull([4], 0) WedHrs
,isnull([5], 0) ThuHrs
,isnull([6], 0) FriHrs
,isnull([7], 0) SatHrs
from (select CategoryID, Datepart(dw, TimeEntryDate) DOW, TimeEntryDuration Hours
from dbo.aspnet_starterkits_TimeEntry
where TimeEntryDate between dateadd(dd, -6, @WeekEnding) and @WeekEnding) Source
pivot (max(Hours) for DOW in ([1],[2],[3],[4],[5],[6],[7])) as pvt
我不知道如何將註釋字段添加到行的末尾。當我做添加它,我得到這樣
WeekEnding Category SunHrs MonHrs TuesHrs WedHrs ThuHrs FriHrs SatHrs Comment
8/7/2010 test 0 0 1 1 1 1 0
8/7/2010 test 0 1 0 0 0 0 0 myComment
結果我只希望每週末度假/類別組合一行,並在輸出每行一個評論。 這是查詢,我添加了註釋字段並顯示不正確。
任何人都可以指出如何每週顯示一條評論/分類行嗎?
DECLARE @WeekEnding datetime
DECLARE @UserName nvarchar(245)
SET @WeekEnding = '09/04/2010'
SET @UserName = 'brogers'
SELECT
@WeekEnding WeekEnding
,TimeEntryDescription
,CategoryID
,isnull([1], 0) SunHrs
,isnull([2], 0) MonHrs
,isnull([3], 0) TueHrs
,isnull([4], 0) WedHrs
,isnull([5], 0) ThuHrs
,isnull([6], 0) FriHrs
,isnull([7], 0) SatHrs
from (select
CategoryID,
Datepart(dw, TimeEntryDate) DOW,
TimeEntryDuration Hours,
TimeEntryDescription
from dbo.aspnet_starterkits_TimeEntry
where TimeEntryDate between dateadd(dd, -6, @WeekEnding) and @WeekEnding) Source
pivot (max(Hours) for DOW in ([1],[2],[3],[4],[5],[6],[7])) as pvt
即使源表具有一週的每一天註釋字段,我只想每星期一個評論每週/類別組合一行。
我將限制輸入爲每週只允許一個(例如星期一),並希望這一個註釋顯示在輸出查詢的行末。
我已經想通了一個「解決」 ......完全相同的註釋添加到一週的每一天,然後它會更容易顯示在一行中。 – 2010-09-17 14:55:05
我的查詢中沒有'on'。 – 2010-09-17 15:09:54