输入中有很多代码,此代码有一个父级
SELECT [fromAccCode]=
CASE WHEN [fromAccCode] IN (201010, 201020, 201442, 201521, 201611,201612,209050,
209060,209090,209110,213040,213163,213165,213166,213190) THEN r1
WHEN [fromAccCode] IN (201040, 201048, 201050, 201090, 201120, 201150
,201155) THEN r2
WHEN [fromAccCode] IN (201443,206020,207010,207040,207100,207130,209612
) THEN r3
我用这个代码设置输入
SELECT [fromAccCode] FROM [dbo].[source_table] WHERE ','+'201010,
201020,259861,754265,213040,213163,213165,201040,
201048, 201050,201443,206020'+',' like '%,'+cast([fromAccCode]
AS varchar(10))+',%'
我希望您具有values(),values()和values()之和的3
记录1,2,3
形式sum
,并且此字段具有值r1
r2
r3
首先:添加一个字段以设置案例数
select [fromAccCode], --your code
field_name= --add this code
CASE
WHEN [fromAccCode] IN (201010,201020,201442,201521,201611,201612,209050,209060,209090,209110,213040,213163,213165,213166,213190) THEN 'r1
WHEN [fromAccCode] IN (201040,201048,201050,201090,201120,201150,201155) THEN r2
WHEN [fromAccCode] IN (201443,206020,207010,207040,207100,207130,209612) THEN r3
ELSE null
END
您不需要以下代码片段:
WHERE ',' + '201010,201020,259861,754265,213040,213163,213165,201040,201048,201050,201443,206020' + ','
LIKE CONCAT('%,', [fromAccCode], ',%')
因为您具有fromAccCode值
第二:
select [fromAccCode ]
,[field_name]
,sum([value])
from #result_table group by [fromAccCode ]
,[field_name]
,[value]
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句