我有下面的代码,我无法弄清楚如何不包含这些到组中。一些论点纯粹是为了这种情况,这就是全部。我不能将它们包含在组中。我不能真正的分组,因为我只需要通过TransactionTyp来获取计数,但我一直得到这个错误:在选择列表中无效,因为它不包含在聚合函数或GROUP BY子句中。在没有组的情况下使用字段
也许使用CASE是错误的方法去做这件事?但是我需要根据其他字段替换一些值。
这也在MS SQL中。
SELECT Count(*),
CASE
WHEN a.TransactionTyp IS NOT NULL THEN a.TransactionTyp
WHEN a.ClaimStatus = 'Resolved-Deflected' THEN 'Deflected'
WHEN a.ClaimStatus = 'Resolved-NoAction' THEN 'Deflected'
WHEN a.ClaimStatus = 'Open' AND b.AssignOperator = 'PendClaim.NF_POS_Pinless' THEN 'Affiliate'
END As TransactionTyp
FROM Table1 a
LEFT JOIN Table2 b
ON a.ClaimNbr = b.ClaimDisputeNbr AND b.CreateDte = Convert(varchar,GetDate(), 101)
WHERE a.ClaimEntryDte = Convert(varchar,GetDate(),101)
AND a.ClaimTypCd IN ('DEBS', 'DEBSI', 'DBCIN', 'DBCUS')
GROUP BY TransactionTyp
这是MS SQL Server的? – 2013-04-26 12:23:02
是的,我的歉意。是的。 – Dulanic 2013-04-26 12:23:27