操作大长度的字符串拼接时该怎么效率的进行
因为项目需要,需要完成这一个查询存储过程:
其中有返回值
@data nvarchar(MAX) output
在操作过程中,可能需要及时查询1000条数据或者更多,并将查询得到的数据 筛选后 拼接到字符串
while(i<1000){
......
set @data=@data+@account+'|'
}
然后将@data 插入另一张表
这个过程中问题就来了
在循环中,字符串越拼越大,处理效率越来越低,一旦这个次数过多 超过1000 或者更多的时候,事务就会被锁死
这样的例子,该用个什么办法来有效解决呢
像C# 一样,单纯的字符串拼接效率是很慢的,但如果用StringBuilder 效率就会提高几百倍, 请问sql server 中是不是也有类似的呢?