SQL 多重判断,并将结果进行分组拼接数据

 SQL 多重判断,并将结果进行分组拼接数据_第1张图片

WITH CCC AS (
Select A.*,B.StyleID FROM (
select KeyID , kkk=( 
case when itemNo = 'StraightCut' then '直裁;' 
	 when itemNO = 'CISCut' then '順毛裁;' 
	 when itemNo = 'TransverseCut' then '橫裁;' 
	 when itemNo = 'Against' then '逆毛裁;' 
	 when itemNo = 'OneDirection' then '一件一方向;' 
	 when itemNo = 'Stripe' then '對條;' 
	 when itemNo = 'DressLine' then '一順排;' 
	 when itemNo = 'Border' then '對格;' 
	 when itemNo = 'Location' then '定位裁;' 
	 when itemNo = 'solid' then '淨色;' 
	 else '' end )
   from SE_SalesItemData where ItemValue='true'  group by KeyID,itemNo )A LEFT JOIN 
   SE_v_MoldBill B ON A.KeyID= B.KeyID where StyleID<>''
)--这里通过case when 进行多重判断,并将判断后的记过进行分组排列


Select keyID,STUFF((SELECT ''+kkk FROM ccc WHERE keyid=a.keyID FOR XML PATH('')) ,1,0,'') AS Name
from ccc AS a
GROUP BY keyID
--这里是将分组好的信息,进行拼接

一下是运行结果

SQL 多重判断,并将结果进行分组拼接数据_第2张图片

 

你可能感兴趣的:(SQL)