将检索出来的列按逗号拼接起来

(STUFF((select ',' + USER_NAME from TBL_BIZ_TRSBILLS_DETAIL where TRANSPORT_CODE = TB.TRANSPORT_CODE and USER_TYPE = '司机'  for xml path('')),1,1,'' )) AS DRIVER_NAMES

这个语句的意思是:用‘,’将查询到的司机姓名拼接起来,然后用 '' 替换掉第一个‘,’

删除指定长度的字符,并在指定的起点处插入另一组字符

STUFF ( character_expression , start , length ,character_expression )

参数:

character_expression : 一个字符数据表达式。character_expression 可以是常量、变量,也可以是字符列或二进制数据列。

start : 一个整数值,指定删除和插入的开始位置(从1开始)。如果 start 或 length 为负,则返回空字符串。如果 start 比第一个 character_expression长,则返回空字符串。start 可以是 bigint 类型。

length : 一个整数,指定要删除的字符数。如果 length 比第一个 character_expression长,则最多删除到最后一个 character_expression 中的最后一个字符。length 可以是 bigint 类型。

原文地址:https://www.cnblogs.com/BobXie85/p/7425548.html