这个sql语句怎么写?
我想用一个sql语句将返回的多行记录自动生成一个用逗号隔开的字符串,比如
select usernum from tbusers 会返回5行,我希望能够自动生成字符串 1,2,3,4,5
能够用sql语句直接写么
SQL code:
create FUNCTION stTable
(
@id varchar(32)
)
RETURNS @st TABLE (id varchar(8000))
begin
declare @sql as varchar(8000);
set @sql=''
select @sql=@sql+','+objid2+''
from (select distinct objid2 from dbo.refobjlink where objid1=@id and
linktype='project3') b
set @sql=substring(@sql,2,len(@sql))
insert into @st values(@sql)
return
end
GO
update project set numbers=t.id
from project
CROSS APPLY stTable(project.id) t
GO
结果是:
原有多行的数据:
1
2
3
4
5
转化为一列的数据:
1,2,3,4,5
本来想帮个忙了的,这个不是很懂。学习了 。。。。呵呵,要是在程序里还好实现。
用一楼的函数就可以实现的
SQL code:
--2005直接用XMl
select stuff((select ','+rtrim(number) from spt_values where t.type=type and number<6 for xml path('')),1,1,'')
from spt_values t where type='p'
group by type
/*
-------------------------------------------------------------------------------------------------------------------------------------------------------------------------
相关问答:
我一个项目,有个插入操作,具体是这样的:
我有进货信息表。在出货时选择相应的进货信息,输入数量,选择部门后,点保存按钮,由于网络延时,点一下没有反映,于是用户就又点一下,导致一次插入了两条记录:
例:
......
场景如下:
客户把备份好的数据库,发给我,我在本机还原后,运行写好的存储过程,比较快,并且在实施那边运行同样比较快。但是当实施在客户那边运行的时候速度就非常的慢,时间超出了程序的时间限制。远程在客户那 ......
今天做了一个存储过程 环境是SQL2000数据库
大致如下
建立临时表
定义员工游标
循环员工(属于1个公司)
......
刚刚接触MySQL,不知道该如何去查看数据,插入数据,创建数据库、表,用哪为前辈能指教一二?
MySQL 5.1参考手册
引用
兄弟你会结贴吗?
mysql 参考手册
baidu
MySQL官方文档 http://dev.mysql.com/doc ......
关于SQL Server Mobile Edition
用Microsoft SQL Server2005 Management Studio Express9.00.3042.00创建SQLCE数据库sqlmobile.sdf
在mobile系统终端上用SQL Server Mobile Edition3.0能查看sqlmobile.sdf里表数据 ......