我有如下數據:SQL Server的SQL語句 - 更新記錄
我需要使用column id, region, company, dept, subdept and amountsepend
更新Matching_id
和Matching_Type
。邏輯是:
Sum AmountSepend by Region, Company, Dept and SubDept
。如果總金額爲0,那麼Matching_Type是'匹配',而Matching_id是匹配記錄的ID的組合,否則'不匹配'且Matching_id是ID。 ** SUM表示不論AmountSepend是正數還是負數,對於相同條件的所有記錄的總數。
另一個重要的標準是,如果該事務是單個記錄,通過各地區分組意總計數,公司,DEPT和SubDept爲1,則相配的類型不匹配,Matching_UID是ID不管AmountSepend是0或正/負值。實例ID 8
下面是輸出:
這裏的表和數據的腳本
CREATE TABLE [dbo].[StackoverflowQuest](
[id] [int] NOT NULL,
[Region] [varchar](50) NULL,
[Company] [varchar](50) NULL,
[Dept] [varchar](50) NULL,
[SubDept] [varchar](50) NULL,
[AmountSepend] [float] NULL,
[Matching_id] [varchar](100) NULL,
[Matching_Type] [varchar](100) NULL
) ON [PRIMARY]
我怎麼能取得這樣的結果?任何幫助/暗示將不勝感激
你還在尋找解決方案嗎? – andrews