求条列的值变成一行的SQL, 如字段 A 1 2 3要变成 1 2 3 用SQL实现,不用存储过程等,谢谢 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 declare @s varchar(8000)select @s=IsNULL(@s,'')+A from 表 declare @s varchar(8000)select @s=IsNULL(@s,'')+cast(A as varchar) from 表Print @s WangZWang(先来) ( ) 信誉:100 2006-06-12 11:52:00 得分: 0 declare @s varchar(8000)select @s=IsNULL(@s,'')+cast(A as varchar) from 表Print @s 他要的应该是显示成多个列吧, 而不是放在一个字段吧. 如果确实这样,那么递规查询变量当然很方便了. 选出数据行之后用游标写循环动态产生列.或者选出数据行之后,再给连续的唯一的标识( identity(int) )写入临时表或表变量,再写循环, 用连续和唯一的标识就是为了避免使用游标,而且这个标识来确定当前记录行,用作指针标记用. 放到多个列中去?? 其实这个可以在前台程序来实现, declare @s varchar(8000) select @s=IsNULL(@s,'列')+cast(A as varchar)+'列' from 表比如上面这种方法就可以知道每一列的值,然后在前台程序进行加工一下即可实现功能。 --或于值为列名来实现,如:declare @t table(A varchar(8))Insert into @t select 1union select 2union select 3 Declare @s varchar(8000) select @s=IsNULL(@s,'')+','+A+' as [列'+A+']' from @t set @s='Select '+stuff(@s,1,1,'') exec(@s)--结果/*列1 列2 列3--------------1 2 3*/ 该SQL 语句怎么写? 一个自定义函数返回表结构的错误 关于WHERE后面能不能加IF判断的? 求一sql语句 关于索引 如何取得数据库中的所有表的名字?? 求通过身份证判断民族和籍贯的库和算法 改版后:高手回来了吗?难道这个没有合理的解决办法了? SQL SERVER70数据库的恢复问题,高手指教 请大家帮我看看这个查询怎么写 列中的数据类型的函数 求条sql语句,再次感谢!
select @s=IsNULL(@s,'')+A from 表
select @s=IsNULL(@s,'')+cast(A as varchar) from 表Print @s
declare @s varchar(8000)
select @s=IsNULL(@s,'')+cast(A as varchar) from 表Print @s
他要的应该是显示成多个列吧, 而不是放在一个字段吧. 如果确实这样,那么递规查询变量当然很方便了.
select @s=IsNULL(@s,'列')+cast(A as varchar)+'列' from 表比如上面这种方法就可以知道每一列的值,然后在前台程序进行加工一下即可实现功能。
declare @t table(A varchar(8))
Insert into @t
select 1
union select 2
union select 3 Declare @s varchar(8000)
select @s=IsNULL(@s,'')+','+A+' as [列'+A+']' from @t
set @s='Select '+stuff(@s,1,1,'')
exec(@s)--结果
/*
列1 列2 列3
--------------
1 2 3
*/