sql server遍历表不用游标和临时表的方法

树叶云

sql server遍历表一般都需要用到游标和临时表,不过下面介绍的例子却不用游标和临时表就可以实现sql server遍历表,让我们一起来了解一下.

表结构如下
  id name
—————————————
  10001 sky blue water 
  10002 book apple shirt 
  10005 cup yellow org
  61245 box phone paper

  1. Create table T(id int,name varchar(50))  
  2.  
  3. insert into T select  10001,    'sky blue water'   
  4. insert into T select  10002 ,   'book apple shirt'   
  5. insert into T select  10005 ,   'cup yellow org'   
  6. insert into T select  61245 ,   'box phone paper'  
  7. GO  
  8.  
  9. SELECT  
  10.      id,  
  11.     SUBSTRING(A.name,B.number,CHARINDEX(' ',A.name+' ',B.number)-B.number) AS [name]  
  12.       
  13. FROM  T as  A  
  14.     JOIN master.dbo.spt_values AS B  
  15.         ON B.type='p' AND B.number BETWEEN 1 AND LEN(A.name)  
  16.             AND SUBSTRING(' '+A.name,B.number,1)=' '  
  17.  
  18. /*  
  19. id          name                                                 
  20. ----------- --------------------------------------------------   
  21. 10001       sky  
  22. 10001       blue  
  23. 10001       water  
  24. 10002       book  
  25. 10002       apple  
  26. 10002       shirt  
  27. 10005       cup  
  28. 10005       yellow  
  29. 10005       org  
  30. 61245       box  
  31. 61245       phone  
  32. 61245       paper  
  33. */  
  34.  
  35. Drop table T 

以上就是sql server遍历表不用游标和临时表的方法介绍。

 

 

 

【编辑推荐】

SQL Server存储过程的单步调试

sql server系统表说明

SQL Server创建分区函数的方法

SQL SERVER全文检索的实现

SQL Server全文索引的用法

文章来源网络,作者:运维,如若转载,请注明出处:https://shuyeidc.com/wp/229886.html<

(0)
运维的头像运维
上一篇2025-04-18 23:42
下一篇 2025-04-18 23:44

相关推荐

发表回复

您的邮箱地址不会被公开。必填项已用 * 标注