本篇内容主要讲解“SQLServer怎么实现group_concat功能”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“SQLServer怎么实现group_concat功能”吧!#tmp表内容如下:实现group_concat的sql语句为:实现效果如下:FORXMLPATH的作用是将查询结果集以XML形式展现,将多行的结果,展示在同一行,例如:其结果集如下:当sql语句加上FORXMLPATH(”)后具体输出的字符如下:30.32680930.32798230.34793330.38810430.39283030.36793130.36805230.36784230.35731830.35734930.357349通过字符拼接后可以把xml信息清除,并以指定的字符进行分割:此时已基本达到group_concat的效果,但第一个字符串有分隔符需要去掉。我们使用STUFF函数的目的是把第一个分隔符去掉。上图可以看到,STUFF函数把字符串“abcdefg”中的第一个字符“a”删除。使用该函数我们可以很轻松的把上图得到的结果集去掉第一个逗号分隔符STUFF函数的作用是将字符串插入到另一个字符串中。它从第一个字符串的开始位置删除指定长度的字符,然后将第二个字符免费云主机域名串插入到第一个字符串的开始位置。其语法为:character_expression:字符数据的表达式,可以是常量、变量,也可以是字符列或二进制数据列。start:一个整数值(从1开始),指定删除和插入的开始位置。start的类型可以是bigint。 •如果start为负或为零,则返回空字符串。 •如果start的长度大于第一个character_expression,则返回空字符串。length:一个整数,指定要删除的字符数。length的类型可以是bigint。 •如果length为负,则返回空字符串。 •如果length的长度大于character_expression,则最多可以删除到character_expression中的最后一个字符。 •如果length为零,则不删除字符直接在指定位置插入内容。replaceWith_expression:字符数据的表达式,可以是常量、变量,也可以是字符列或二进制数据列。此表达式从start开始替换length个字符的character_expression。 •如果replaceWith_expression为NULL,则在不插入任何内容的情况下删除字符。这个sql各位看官都十分熟悉,已经没什么好说的了。在上述简单的groupby语句基础上加入一个select里的子查询在该子查询中,当外层的groupby返回结果集中的第一行RegionID为41653时,这个值被子查询的where条件所使用,相当于:因为FORXMLPATH把多行记录打平成一条记录接着第groupby返回结果集中的第二行45761传入该子查询,依次类似上面描述的执行,直到所有外层的值遍历完成。利用STUFF函数,去掉了第一个逗号,完成了最终sql语句。到此,相信大家对“SQLServer怎么实现group_concat功能”有了更深的了解,不妨来实际操作一番吧!这里是百云主机网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!
相关推荐: eclipse怎么配置tomcat
这篇“eclipse怎么配置tomcat”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“ecl免费云主机域名ipse怎么配置tomcat”文章吧。…
免责声明:本站发布的图片视频文字,以转载和分享为主,文章观点不代表本站立场,本站不承担相关法律责任;如果涉及侵权请联系邮箱:360163164@qq.com举报,并提供相关证据,经查实将立刻删除涉嫌侵权内容。