首页新闻找找看学习计划

SQL2005查询

0
悬赏园豆:10 [已解决问题] 解决于 2013-03-13 14:43

我现在有张手机库存表,里面存有手机型号PHone_Code,库存状态Status(0为未出库,2为已出库),出库日期OutStorehouseTime,我现在要按机型和日期去统计每天出库的数量。就是要看到每个机型从1号到30号每天的出库数量。SQL语句怎么写啊!高手指点!谢谢!

抱着树死劲摇的主页 抱着树死劲摇 | 初学一级 | 园豆:102
提问于:2010-10-21 12:23
< >
分享
最佳答案
0

select  OutStorehouseTime,PHone_Code,sum(case when status=2 then 1 else 0 end)

from 库存表

group by  OutStorehouseTime,PHone_Code

不知道是不是你想要的

收获园豆:10
John29 | 小虾三级 |园豆:825 | 2010-10-21 13:27
楼上正解,我已测试过。前提是:库存状态为2表示出库量是1.
youcaihua | 园豆:110 (初学一级) | 2010-10-21 13:49
你这一步我也做到了,可是没达到需求,我要看到的是 从1号到30号每一天的出库情况,从1号开始没款机有都少就显示多少,没有的就用0表示
抱着树死劲摇 | 园豆:102 (初学一级) | 2010-10-22 09:05
其他回答(2)
0
create view _view
as
select *,PHone_Code+Convert(nvarchar(20),OutStorehouseTime,120) as _group
from _table
where Status=2

select
count(*) as 出库数量,
max(PHone_Code) as PHone_Code,
max(OutStorehouseTime) as OutStorehouseTime
from _table group by _group
order by OutStorehouseTime

 

写代码的小2B | 园豆:4346 (老鸟四级) | 2010-10-21 13:20
select *,PHone_Code+OutStorehouseTime as _group from _table where Status=2 怎么报错啊 从字符串向 datetime 转换时失败。
支持(0) 反对(0) 抱着树死劲摇 | 园豆:102 (初学一级) | 2010-10-22 08:56
我的失误 已改正
支持(0) 反对(0) 写代码的小2B | 园豆:4346 (老鸟四级) | 2010-10-22 11:57
0

疑问:库存状态为2,默认都是指出库数量为1??

youcaihua | 园豆:110 (初学一级) | 2010-10-21 13:25
1表示待出库
支持(0) 反对(0) 抱着树死劲摇 | 园豆:102 (初学一级) | 2010-10-22 09:03
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册