首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > SQL Server >

求sql 语句,把一个字段的数据串起来,该如何解决

2012-01-29 
求sql 语句,把一个字段的数据串起来求sql语句,把查询一个字段的数据串起来[解决办法]结果集:12345我想要的

求sql 语句,把一个字段的数据串起来
求sql   语句,把查询一个字段的数据串起来

[解决办法]
结果集:
1
2
3
4
5

我想要的是用逗号隔开的一个字符串
1,2,3,4,5


declare @output varchar(8000)
select @output = coalesce(@output+ ', ', ' ') + col from table
print @output

[解决办法]
declare @str varchar(8000)
select @str=isnull(@str, ' ')+字段名 from 表
print @str
[解决办法]
--?这样?
select c1+c2+c3+...+cn from 表

数值型字段要转换:cast(cn as varchar)
[解决办法]
--例子
declare @str varchar(8000)
set @str= ' '

select @str=@str+rtrim(列名) from 表名
print @str
[解决办法]
create table tb(id varchar(10))
insert into tb values( '1 ')
insert into tb values( '2 ')
insert into tb values( '3 ')
insert into tb values( '4 ')
insert into tb values( '5 ')
go
declare @output varchar(8000)
select @output = coalesce(@output+ ', ', ' ') + id from tb
print @output
drop table tb

/*
1,2,3,4,5
*/
[解决办法]
declare @str varchar(8000)

set @str= ' '
select top 10 @str=@str+ '|| '+[name]
from syscolumns

set @str=stuff(@str,1,2, ' ')
print @str

/* 结果
base_schema_ver||cache||category||crdate||deltrig||ftcatid||id||indexdel||info||instrig
*/
[解决办法]
use xxx
go
declare @Var_TBL TABLE(test varchar(20))
declare @result varchar(2000)
begin
insert into @Var_TBL values( '1 ')
insert into @Var_TBL values( '2 ')
insert into @Var_TBL values( '3 ')
insert into @Var_TBL values( '4 ')
insert into @Var_TBL values( '5 ')
select @result=isnull(@result, ' ')+isnull(test, ' ')+ ', ' from @Var_TBL
select @result=substring(@result,1,len(@result)-1)
select @result result
end
[解决办法]
declare @str varchar(8000)
set @str= ' '
select @str=@str+ ', '+字段名 from 表
set @str=right(@str,len(@str)-1)
print @str

热点排行