SQL语句怎样行转列,要求不用过程

ATGC 2006-10-30 01:56:53
SQL语句怎样行转列,要求不用过程

比如
table a

id amount
1 40
1 80
2 10
2 20
3 60

得到
1 40/80
2 10/20
3 60

...全文
203 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
zhenmeiyisi 2006-10-30
  • 打赏
  • 举报
回复
create table cs1(id int,amount int)
insert into cs1 select 1,40
union all select 1,80
union all select 2,10
union all select 2,20
union all select 3,60




CREATE FUNCTION dbo.f_str(@id varchar(100))
RETURNS varchar(1000) AS
BEGIN

declare @s varchar(4000)
set @s=''
select @s=@s+'/'+ltrim(amount) from cs1 where id=@id
if @s<>''
set @s=stuff(@s,1,1,'')
return @s
END




select id,dbo.f_str(id) amount from cs1 group by id
liangfei1983 2006-10-30
  • 打赏
  • 举报
回复
一句sql语句的,我还没想出来!
ATGC 2006-10-30
  • 打赏
  • 举报
回复
up
ATGC 2006-10-30
  • 打赏
  • 举报
回复
看来只能用函数了
我想用一句SQL语句不行啊?
因为我的行不固定的
帮忙写一下好么
谢谢
playwarcraft 2006-10-30
  • 打赏
  • 举报
回复
SQL2000嗎?
--游標
--函數
--臨時表
--固定行

要哪個?
gahade 2006-10-30
  • 打赏
  • 举报
回复
这也不是行转列啊!
写个函数转一下

34,587

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧