--看错了,楼主是要一个值,不是几条记录 --这样 declare @s varchar(8000) set @s='' select @s=@s+','+convert(varchar(10),字段B,120)+' '+字段A from 表 set @s=stuff(@s,1,1,'') select 结果=@s
select convert(varchar(10),字段B,120)+' '+字段A from 表,查出整个结果集, 然后把结果集的每一行组合到一起
declare @s varchar(400) set @s='' select @s=@s+','+convert(varchar(10),arrivetime,120)+' '+detail from t_track print @s set @s=stuff(@s,1,1,'') print @s select 结果=@s 邹键大哥,我怎么没有得到结果呢? 运行是运行了,可是就是看不到结果,我现在把字段也加上去了,表名也是这个名称,不知道您不能不能帮我看看!
--测试--测试数据 create table 表(字段A varchar(20),字段B datetime) insert 表 select '广东省广州市','2004-08-26' union all select '湖南省衡阳市','2004-08-27' union all select '湖北省武汉市','2004-08-28' go--查询 declare @s varchar(8000) set @s='' select @s=@s+','+convert(varchar(10),字段B,120)+' '+字段A from 表 set @s=stuff(@s,1,1,'') select 结果=@s go--删除测试 drop table 表/*--测试结果结果 ------------------------------------------------------------------------ 2004-08-26 广东省广州市,2004-08-27 湖南省衡阳市,2004-08-28 湖北省武汉市(所影响的行数为 1 行) --*/
--如果表中有NULL值,则改为:declare @s varchar(8000) set @s='' select @s=@s+','+isnull(convert(varchar(10),字段B,120),'')+' '+isnull(字段A,'') from 表 set @s=stuff(@s,1,1,'') select 结果=@s
--如果NULL值根本不查询出来,则: declare @s varchar(8000) set @s='' select @s=@s+','+isnull(convert(varchar(10),字段B,120),'')+' '+isnull(字段A,'') from 表 where 字段A is null and 字段B is null set @s=stuff(@s,1,1,'') select 结果=@s
--这样
declare @s varchar(8000)
set @s=''
select @s=@s+','+convert(varchar(10),字段B,120)+' '+字段A
from 表
set @s=stuff(@s,1,1,'')
select 结果=@s
然后把结果集的每一行组合到一起
set @s=''
select @s=@s+','+convert(varchar(10),arrivetime,120)+' '+detail
from t_track
print @s
set @s=stuff(@s,1,1,'')
print @s
select 结果=@s
邹键大哥,我怎么没有得到结果呢?
运行是运行了,可是就是看不到结果,我现在把字段也加上去了,表名也是这个名称,不知道您不能不能帮我看看!
create table 表(字段A varchar(20),字段B datetime)
insert 表 select '广东省广州市','2004-08-26'
union all select '湖南省衡阳市','2004-08-27'
union all select '湖北省武汉市','2004-08-28'
go--查询
declare @s varchar(8000)
set @s=''
select @s=@s+','+convert(varchar(10),字段B,120)+' '+字段A
from 表
set @s=stuff(@s,1,1,'')
select 结果=@s
go--删除测试
drop table 表/*--测试结果结果
------------------------------------------------------------------------
2004-08-26 广东省广州市,2004-08-27 湖南省衡阳市,2004-08-28 湖北省武汉市(所影响的行数为 1 行)
--*/
set @s=''
select @s=@s+','+isnull(convert(varchar(10),字段B,120),'')+' '+isnull(字段A,'')
from 表
set @s=stuff(@s,1,1,'')
select 结果=@s
declare @s varchar(8000)
set @s=''
select @s=@s+','+isnull(convert(varchar(10),字段B,120),'')+' '+isnull(字段A,'')
from 表
where 字段A is null and 字段B is null
set @s=stuff(@s,1,1,'')
select 结果=@s