declare @str varchar(8000)
set @str=''
select @str=@str+(des) from tb1
select @str
即可
set @str=''
select @str=@str+(des) from tb1
select @str
即可
解决方案 »
- 如何用简单的办法将查询结果中的13个双精度字段的小数点保留4位显示在控件dataview中
- 请问WHERE子句只能作用于主键吗?
- 求获得当前日期的前一月的第一天?谢谢!
- 急~删除数据同时插入数据
- 关于sqlserver使用3gb内存的设置
- 求救,附加数据文件失败
- 急!想各位大虾求救!winxp下安装sql7.0 提示“登陆不成功”!!
- 替朋友問一下小問題。字符串替換。。。
- 我在装sql server 2000的时候出现了问题,急呀
- sql server 2000的 datetime字段类型如何赋值?
- 菜鸟问一个问题,如何用SQL语句填加和去除一个表的某字段IDENTITY属性
- 怎样更改一个数据表的权限
set @str=''
select @str=@str+des from tb1 where des is not null
select @str
即可
--自定义函数
create function strSum()
returns varchar(8000)
as
begin
declare @r varchar(8000)
set @r=''
select @r=@r+des from tb1
return(@r)
end
go--调用
select dbo.strsum() from tb1
select dbo.strsum()
create table tb1(id int,des varchar(10))
insert tb1 select 1,'abc'
union all select 2,'def'
union all select 3,'ghi'
go--自定义函数
create function strSum()
returns varchar(8000)
as
begin
declare @r varchar(8000)
set @r=''
select @r=@r+des from tb1
return(@r)
end
go--调用
select dbo.strsum()
go--删除测试
drop table tb1
drop function strsum/*--测试结果------------------------------
abcdefghi(所影响的行数为 1 行)
--*/
能否把它当成系统提供的函数(如Sum)一样用?也就是说,如果这样调用select strSum(des) from tb1 where id <= 2应该得到'abcdef'