我在 Sql server 2005 中有一个具有这种结构的表。
TABLE TPilot
(
Num_Office char(3) NULL,
AppID char(3) NULL
)
并且在表中有大约 998 条记录,“Num_Office”值从 2 到 999。我想在一行中获取所有办公室值,用逗号分隔值,如 2,3,4,5..999
以下是我现在使用的查询 -
select stuff((select ','+ Num_Office from TPilot for xml path('')),1,1,'')
这里的问题是 - 它不会返回所有行值。它只返回大约 65 行。
2 ,3 ,4 ,5 ,6 ,7 ,8 ,9 ,10 ,11 ,12 ,13 ,14 ,15 ,16 ,17 ,18 ,19 ,20 ,21 ,22 ,23 ,24 ,25 ,26 ,27 ,28 ,29 ,30 ,31 ,32 ,33 ,34 ,35 ,36 ,37 ,38 ,39 ,40 ,41 ,42 ,43 ,44 ,45 ,46 ,47 ,48 ,49 ,50 ,51 ,52 ,53 ,54 ,55 ,56 ,57 ,58 ,59 ,60 ,61 ,62 ,63 ,64 ,65 ,
请建议我在这里缺少什么。