同一列SQL字符串相加的方法

下面为您介绍的方法实现 同一列SQL字符串相加,供您参考学习,如果您也遇到过类似的问题,不妨一看,相信对您会有所启迪。

 
 
 
  1. Create table Tab([Col1] int,[Col2] nvarchar(1))  
  2. Insert Tab  
  3. select 1,N'a' union all  
  4. select 1,N'b' union all   
  5. select 1,N'c' union all   
  6. select 2,N'd' union all   
  7. select 2,N'e' union all   
  8. select 3,N'f'   
  9. Go   
  10.  
  11. create function F_Str(@Col1 int)   
  12. returns nvarchar(100)   
  13. as   
  14. begin      
  15. declare   
  16. @S nvarchar(100)      
  17. select @S=isnull(@S,'')+Col2 from Tab where Col1=@Col1      
  18. return @S   
  19. end   
  20. go   
  21. Select distinct Col1,Col2=dbo.F_Str(Col1) from Tab   
  22. go   
  23.  
  24. ================================  

说明:
目标:表的一列为SQL字符串,要求把该列SQL字符串连起来。
如:
1,aa,
1,bb
2,cc
2,dd
结果:
1,aabb
2,ccdd
如果要出现aa,bb  cc,dd的结果
那isnull(@S,'')改成isnull(@S+',','')

isnull(@S,''): 如果@S是空,则用''代替,因为null+字符串 = null

 

 

 

【编辑推荐】

按时间点还原SQL数据库的方法

教您如何修改sql server时间

Sql Server日期与时间函数简介

SQL Server时间算法大全

带您学习SQL存储过程

THE END