SQLSever多行合并成一行
--创建函数
CREATE FUNCTION [LCMS179999].[GetSYRY5](@GroupId [varchar](36))
RETURNS [varchar](4000)
AS
BEGIN
    DECLARE @ReturnValue [varchar](4000)
    SET @ReturnValue = ''
    SELECT @ReturnValue=@ReturnValue+SZYDGLSYB_SYRYMC  + '('+(CASE SZYDGLSYB_SYJG
    WHEN '10' THEN '同意'
    WHEN '20' THEN '原则同意'
    WHEN '00' THEN '保留意见'
    WHEN '90' THEN '不同意'
    WHEN '30' THEN '同意缓议'
    ELSE '未参与该议题' END
    )+')'+','
         FROM SZYDGLSYB
        WHERE SZYDGLSYB_GLNM = @GroupId
    SET @ReturnValue = substring(@ReturnValue,1,len(@ReturnValue)-1)
    RETURN @ReturnValue
END
GO
--查询验证
SELECT SZYDGLSYB_GLNM,[LCMS179999].[GetSYRY5](SZYDGLSYB_GLNM) AS 'SYJG'
FROM (SELECT DISTINCT SZYDGLSYB_GLNM FROM SZYDGLSYB)A
--更新数据
UPDATE SZYDYTB SET SZYDYTB.SZYDYTB_SYJG=B.SYJG FROM SZYDYTB,(SELECT SZYDGLSYB_GLNM,[LCMS179999].[GetSYRY5](SZYDGLSYB_GLNM) AS 'SYJG'
FROM (SELECT DISTINCT SZYDGLSYB_GLNM FROM SZYDGLSYB)A)B
WHERE SZYDYTB_NM=B.SZYDGLSYB_GLNM AND SZYDYTB_SYJG=''
 
                    
                     
                    
                 
                    
                
 
 
                
            
         
         浙公网安备 33010602011771号
浙公网安备 33010602011771号