高分求救一SQL语句的写法

mileszm 2005-05-20 01:46:59
原始资料
OrderNo ProNo ProDate
------------------------------------------------
A001 1 10/01
A001 2 10/02

需达到的效果
OrderNo 1 2
----------------------------------------------
A001 10/01 10/02
...全文
88 点赞 收藏 9
写回复
9 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
ncwuhh 2005-05-20
参考:http://community.csdn.net/Expert/topic/3958/3958060.xml?temp=.2101557
回复
zjcxc 2005-05-20
按我写的就可以了.
回复
capcom 2005-05-20
学习。。学习
回复
mileszm 2005-05-20
是动态字段, 字段名能否自动横排 (说明: OrderNo值都是 “A001”, ProNo&ProDate值是不固定的).
回复
zjcxc 2005-05-20


--ProNo 是动态的用动态语句
declare @s nvarchar(4000)
set @s=''
select @s=@s+','+quotename(ProNo)
+'=max(case ProNo when '+rtrim(ProNo)
+' then ProDate end)'
from 原始资料
group by ProNo
exec('select OrderNo'+@s+' from 原始资料 group by OrderNo')
回复
了缘 2005-05-20
要动态实现的话,等高手
回复
了缘 2005-05-20
需求有点变态
虽然可以实现

select orderno ,case prono when 1 then prodate else null end as 1 ,
case prono when 2 then prodate else null end as 2 from table
组合起来还没有想出来
查下以前的资料吧,有很多的

等高手吧
回复
fengfangfang 2005-05-20
SELECT OrderNo, MAX(CASE prono WHEN 1 THEN prodate ELSE '1900-1-1' END) AS '1',
MAX(CASE prono WHEN 2 THEN prodate ELSE '1900-1-1' END) AS '2'
FROM Table1
GROUP BY OrderNo
回复
mileszm 2005-05-20
跟帖给分!!!!!
回复
相关推荐
发帖
应用实例
创建于2007-09-28

2.7w+

社区成员

MS-SQL Server 应用实例
申请成为版主
帖子事件
创建了帖子
2005-05-20 01:46
社区公告
暂无公告