SQL统计每个数据行里面的某个用逗号隔开的字段的数量

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接: https://blog.csdn.net/weixin_41535326/article/details/99820729

长话短说,直接上图:
示例图
目的是统计出每一行里面的逗号分割开来的数量,例如第三行的第三个字段的数量就是2。

 SELECT
  case when len( CONVERT(NVARCHAR(MAX), yewgz) )  >= 1 then (len( CONVERT(NVARCHAR(MAX), yewgz) ) - len(replace(CONVERT(NVARCHAR(MAX), yewgz),',','')))+1 ELSE 0 end AS  yewgz,
  case when len( CONVERT(NVARCHAR(MAX), zhenggtz) )  >= 1 then (len( CONVERT(NVARCHAR(MAX), zhenggtz) ) - len(replace(CONVERT(NVARCHAR(MAX), zhenggtz),',','')))+1 ELSE 0 end AS  zhenggtz,
  case when len( CONVERT(NVARCHAR(MAX), huiyjl) )  >= 1 then (len( CONVERT(NVARCHAR(MAX), huiyjl) ) - len(replace(CONVERT(NVARCHAR(MAX), huiyjl),',','')))+1 ELSE 0 end AS  huiyjl,
    gongcmcbf
    FROM 
    formtable_main_877 t1
    LEFT JOIN dbo.workflow_requestbase AS trb ON trb.requestid = t1.requestId 
    WHERE
    trb.currentnodetype = 3 
    AND t1.shifsh = 0

猜你喜欢

转载自blog.csdn.net/weixin_41535326/article/details/99820729
今日推荐