我在下面的查詢中告訴我,人們在給定的時間段內開始和結束。計算工會中兩個值之間的差異
select UserId,
cast(sum(CommissionPerc)/100 as numeric(2,1)) as PlacementCount,
datename(mm,startdate) + ' ' + 'Start' as DataType
from PlacementConsultants
group by userid, datename(mm,StartDate)
union
select UserId,
cast(sum(CommissionPerc)/100 as numeric(2,1)) as PlacementCount,
datename(mm,EndDate) + ' ' + 'End' as DataType
from Placements
group by userid, datename(mm,EndDate)
order by datatype
,其輸出如下:
791 4.0 May End
791 3.0 May Start
791 6.0 June End
791 2.0 June Start
791 1.0 July Start
但是我也想有其中寫入爲MONTHNAME變化
例如列
791 4.0 May End
791 3.0 May Start
791 -1.0 May Change
什麼是最好的方式去做這件事?
任何特別的原因,爲什麼你重複的行需要這些行而不是列? 如果您輸出了以下列標題'UserID,月份,起始值,結束值,更改',這將非常簡單。 –
@Declan_K我稍後將其用作數據透視表,因此需要數據儘可能平坦。最終結果是以第三列作爲輸出的列標題(例如,在這種情況下,May 3列稱爲May End,May Start和May Change) – franglais