| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1538 人关注过本帖
标题:[求助]如何实现这样的查询结果?
只看楼主 加入收藏
西风独自凉
Rank: 8Rank: 8
等 级:贵宾
威 望:43
帖 子:3380
专家分:28
注 册:2007-8-2
收藏
得分:0 
還有一種方法,但要在表中加入一個字段才可以實現。。。。
表t_test
id name orderid
1001 aa 1
1001 bb 2
1001 cc 3
1005 aa 1
1005 bb 2
1005 cc 3
1005 dd 4

SELECT k.id, isnull(A.name,'')+','+isnull(B.name,'')+','+isnull(C.name,'') as name
FROM
(SELECT DISTINCT id FROM t_test ) AS k
left JOIN
(Select id, name From t_test Where Orderid = 1 ) AS A
ON k.id = A.id
LEFT JOIN
(Select id, name From t_test Where Orderid = 2 ) AS B
ON k.id = B.id
LEFT JOIN
(Select id, name From t_test Where Orderid =3 ) AS C
ON k.id = C.id
....................
LEFT JOIN
(Select id, name From t_test Where Orderid =n ) AS n
ON k.id = n.id

[此贴子已经被作者于2007-9-11 20:49:29编辑过]


2007-09-11 20:42
purana
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:广东-广州
等 级:版主
威 望:66
帖 子:6039
专家分:0
注 册:2005-6-17
收藏
得分:0 

刚学,看不太懂.
如果 这样做
那如果id号为1001的有5000.有50000.有5000000000
那不写死?

[此贴子已经被作者于2007-9-11 20:53:16编辑过]


我的msn: myfend@
2007-09-11 20:52
xinzheng
Rank: 1
等 级:新手上路
帖 子:193
专家分:0
注 册:2007-7-22
收藏
得分:0 
你们刚学就这么厉害啊,我都管SQL4年了,连你们写的什么意思都看不懂,诶
2007-09-11 23:00
西风独自凉
Rank: 8Rank: 8
等 级:贵宾
威 望:43
帖 子:3380
专家分:28
注 册:2007-8-2
收藏
得分:0 
回复:(purana)刚学,看不太懂.如果 这样做那如果id号...
是啊。。就是這裡不太好,還需進一步修改

[此贴子已经被作者于2007-9-12 8:52:43编辑过]



2007-09-12 08:14
purana
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:广东-广州
等 级:版主
威 望:66
帖 子:6039
专家分:0
注 册:2005-6-17
收藏
得分:0 
棉花糖.
kendy123456
这两个高手都不来了.

我的msn: myfend@
2007-09-12 09:48
bygg
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:乖乖的心中
等 级:版主
威 望:241
帖 子:13555
专家分:3076
注 册:2006-10-23
收藏
得分:0 

飘过~~
2007-09-12 10:30
purana
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:广东-广州
等 级:版主
威 望:66
帖 子:6039
专家分:0
注 册:2005-6-17
收藏
得分:0 

看不懂.

我的msn: myfend@
2007-09-12 10:56
心中有剑
Rank: 2
等 级:新手上路
威 望:5
帖 子:611
专家分:0
注 册:2007-5-18
收藏
得分:0 
楼上谦虚了

2007-09-12 18:56
purana
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:广东-广州
等 级:版主
威 望:66
帖 子:6039
专家分:0
注 册:2005-6-17
收藏
得分:0 
没有.数据库确实初学.菜鸟一名.

我的msn: myfend@
2007-09-12 19:04
shuzai1985
Rank: 1
等 级:新手上路
帖 子:22
专家分:0
注 册:2007-8-22
收藏
得分:0 
if object_id('fn_合并') is not null drop function fn_合并
go
create function fn_合并(
@id varchar(20)
)
returns varchar(300)
as
begin
declare @r varchar(300)
set @r=''
select @r=@r+' '+ tm from tablename where id=@id
return @r
return @r=stuff(@r,1,1,'')

end
go
--调用
select id,dbo.fn_合并(id) as tm from tablename
group by id
drop function fn_合并
drop table tablename
这样吧...................
2007-09-14 23:53
快速回复:[求助]如何实现这样的查询结果?
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.017662 second(s), 7 queries.
Copyright©2004-2025, BCCN.NET, All Rights Reserved