首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > SQL Server >

经典SQL在线求解,高分相送~解决方法

2012-02-09 
经典SQL在线求解,高分相送~~~~~----网点编号网点名称预约时间产品线编号产品线名称所属分类所属分类编号数

经典SQL在线求解,高分相送~~~~~
--  
--   网点编号   网点名称             预约时间             产品线编号   产品线名称所属分类所属分类编号   数量
--   ===================================================================================
--   1总部2007-02-27   00:00:00.00023010液晶电视机AV商品230071
--   1总部2007-02-27   00:00:00.00023011音响AV商品230071
--   1总部2007-02-28   00:00:00.00023011音响AV商品230071
--   1总部2007-03-02   00:00:00.00023010液晶电视机AV商品230071
--   1总部2007-03-08   00:00:00.00023010液晶电视机AV商品230071
--   1总部2007-03-16   00:00:00.00023010液晶电视机AV商品230071
--   1总部2007-03-28   00:00:00.00023010液晶电视机AV商品230071
--   1总部2007-04-01   00:00:00.00023010液晶电视机AV商品230072
--   1总部2007-04-04   00:00:00.00023010液晶电视机AV商品230071
--   1总部2007-04-05   00:00:00.00023010液晶电视机AV商品230073
--   1总部2007-04-12   00:00:00.00023010液晶电视机AV商品230073
--   1总部2007-04-28   00:00:00.00023010液晶电视机AV商品230072
--   1总部2007-04-29   00:00:00.00023010液晶电视机AV商品230073
--   1001浙江地区2007-02-27   00:00:00.00023010液晶电视机AV商品230074
--   1001浙江地区2007-03-08   00:00:00.00023010液晶电视机AV商品230071
--   1003杭州网点2007-02-01   00:00:00.00023011音响AV商品230071
--   1003杭州网点2007-02-26   00:00:00.00023010液晶电视机AV商品230071
--   1003杭州网点2007-02-27   00:00:00.00023010液晶电视机AV商品230071
--   1003杭州网点2007-02-27   00:00:00.00023011音响AV商品230071
--   1003杭州网点2007-02-28   00:00:00.00023010液晶电视机AV商品2300712
--   1003杭州网点2007-02-28   00:00:00.00023011音响AV商品230072
--   1003杭州网点2007-03-01   00:00:00.00023010液晶电视机AV商品230072
--   1003杭州网点2007-03-01   00:00:00.00023011音响AV商品230074
--   1003杭州网点2007-03-02   00:00:00.00023011音响AV商品230077
--   1003杭州网点2007-03-09   00:00:00.00023010液晶电视机AV商品230074
--   1003杭州网点2007-03-27   00:00:00.00023010液晶电视机AV商品230074
--   1003杭州网点2007-03-28   00:00:00.00023010液晶电视机AV商品230073
--   1003杭州网点2007-03-29   00:00:00.00023010液晶电视机AV商品230073
--   1003杭州网点2007-04-01   00:00:00.00023011音响AV商品230073
--   1003杭州网点2007-04-04   00:00:00.00023010液晶电视机AV商品230073
--   1003杭州网点2007-04-06   00:00:00.00022110空调电化产品230093
--   1003杭州网点2007-04-07   00:00:00.00022310电冰箱电化产品230093
--   1003杭州网点2007-04-20   00:00:00.00022122洗衣机电化产品230093
--   1003杭州网点2007-04-25   00:00:00.00022110空调电化产品230093
--  
--   AV商品电化产品
--   网点编号   网点名称             预约时间掖晶电视   音响……     小计     空调     电冰箱   洗衣机……     小计       总计
--   ===============================================================================
--1     总部                     2007-02-27               1             1                     1         0           0           0                     0             1
--   。。。。。。。。。

------解决方案--------------------


沙发
[解决办法]
up
[解决办法]
你的数据整理一下
[解决办法]
能否重新整理一下,你想要什么结果?
[解决办法]
drop table tbtest
go
create table tbtest(org varchar(20),date datetime,pline varchar(20),ptype varchar(10),num int)
insert into tbtest
select '总部 ', '007-02-27 00:00:00.000 ', '液晶电视机 ', 'AV商品 ',1
union all select '总部 ', '2007-02-27 00:00:00.000 ', '音响 ', 'AV商品 ',3
union all select '总部 ', '2007-02-28 00:00:00.000 ', '音响 ', 'AV商品 ',1
union all select '总部 ', '2007-03-02 00:00:00.000 ', '液晶电视机 ', 'AV商品 ',1

declare @sql varchar(2000)
set @sql= ' '
select @sql=@sql+ ',sum(case when pline= ' ' '+pline+ ' ' ' then num else 0 end) as ' ' '+pline+ '(数量) ' ' '
from (select distinct pline from tbtest)t
exec( 'select org,date,ptype '+@sql+ ',(select sum(num) from tbtest a where a.org=tbtest.org and a.date=tbtest.date and a.ptype=tbtest.ptype) as 合计 from tbtest
group by org,date,ptype ')
/*
org date ptype 液晶电视机(数量) 音响(数量) 合计
----------- ------------------------------ ---------- ----------- ----------- -----------
总部 2007-02-27 00:00:00.000 AV商品 1 3 4
总部 2007-02-28 00:00:00.000 AV商品 0 1 1
总部 2007-03-02 00:00:00.000 AV商品 1 0 1
*/

热点排行