CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
可用分押宝游戏火热进行中... 专题改版:Java Web 专题
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  MS-SQL Server >  基础类

一道笔试题!!请高手指点指点啊!!

楼主talen200308(hui)2004-12-02 01:17:24 在 MS-SQL Server / 基础类 提问

T1数据:  
  物品ID 入库数量 入库时间  
  1 10 2001.1.1  
  2 20 2001.1.1  
  3 50 2001.2.1  
   
  T2数据:  
  物品ID 出库数量 入库时间  
  1 5 2001.1.1  
  2 10 2001.1.1  
  3 20 2001.2.1  
  4 50 2001.2.1  
  问题:利用T1和T2入出库数据重新生成T3库存台帐数据  
  T3数据:  
  物品ID 物品月初结存数 物品月末结存数 结存年份 结存月份  
  1 0                   5                   2001 1  
  2 0                   10                   2001 1  
  1 5                   5                   2001 2  
  2 10                   10                   2001 2  
  3 0                   30                   2001 2  
  4 0                   -50                   2001 2  
  问题点数:0、回复次数:12Top

1 楼talen200308(hui)回复于 2004-12-02 01:18:17 得分 0

高位高手多谢指导知道小弟啊。。Top

2 楼fengyinglois(风影)回复于 2004-12-02 08:43:25 得分 0

典型的   进销存   问题  
  如果你的表结构是这样就很麻烦,应该加一个字段"每月的结存"Top

3 楼lmj2003(雁不归)回复于 2004-12-02 08:47:08 得分 0

我也想知道,帮你顶。Top

4 楼lh1979(rocket)回复于 2004-12-02 09:50:32 得分 0

用游标把t1表循环一遍,循环的时候对t1的每一条记录操作就可以得到你上面要的数据Top

5 楼zhang_yzy(六子儿)回复于 2004-12-02 10:57:24 得分 0

入库时间的类型是什么呀Top

6 楼qizhanfeng(glacier)回复于 2004-12-02 11:29:23 得分 0

upTop

7 楼zhang_yzy(六子儿)回复于 2004-12-02 12:11:22 得分 0

时间型  
  每月出入库数量表  
  select   物品ID,结存月份,结存年份,sum(数量)  
      into   #temp  
      from   (select   物品ID,  
                                datename(year,入库时间)   as   结存年份,  
                                datename(month,入库时间)   as   结存月份,  
                                sum(入库数量)   as   数量  
                        from   T1  
                    group   by   物品ID,  
                                      datename(year,入库时间)    
                                      datename(month,入库时间)    
                      union   all  
                      select   物品ID,  
                                    datename(year,出库时间)   as   结存年份,  
                                    datename(month,出库时间)   as   结存月份,  
                                    -sum(出库数量)as   数量  
                          from   T2  
                    group   by   物品ID,  
                                      datename(year,出库时间)    
                                      datename(month,出库时间)   )   a  
          order   by   结存年份,结存月份,物品ID  
   
  select   a.物品ID,  
                (select   sum(数量)   as   物品月初结存数   from   #temp    
                      where   物品ID   =a.物品ID    
                          and   结存年份<=a.结存年份  
                          and   结存月份<a.结存月份),  
                (select   sum(数量)   as   物品月末结存数   from   #temp    
                      where   物品ID   =a.物品ID    
                          and   结存年份<=a.结存年份  
                          and   结存月份<=a.结存月份),  
                a.结存年份,  
                a.结存月份  
        into   T3  
        from   #temp   a  
  Top

8 楼hanzhi09(hz)回复于 2004-12-02 12:11:54 得分 0

循环了T1,T2中有T1中没有的数据怎么办?Top

9 楼viznet(雨影)回复于 2004-12-02 16:20:31 得分 0

MarkTop

10 楼prcgolf(小鸟)回复于 2004-12-03 11:03:20 得分 0

upTop

11 楼nhlic()回复于 2004-12-06 11:15:40 得分 0

看来我们公司的试题要换一下了,我在收到的邮件中发现了两个人的答案与楼上的一样。Top

12 楼nhlic()回复于 2004-12-06 11:33:52 得分 0

作为开发员能利用网络去寻求解决问题的答案,这点做得不错,但我的目的是考核解题的思路与对SQL的掌握程度,这样的做法与我们的初衷是背道而弛的。  
  Top

相关问题

  • 一道面试题,请指点
  • 一道笔试题
  • 一道笔试题
  • 一道笔试题
  • 一道笔试题
  • 一道笔试题
  • 一道笔试题
  • 求解一道笔试题
  • 一道笔试题,求解
  • 关于一道笔试题

关键词

  • 物品
  • 数据
  • 结存
  • 入库
  • 出库
  • datename
  • 年份
  • 月份
  • 数量
  • 时间

得分解答快速导航

  • 帖主:talen200308

相关链接

  • SQL Server类图书

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
世纪乐知(北京)网络技术有限公司 版权所有, 京 ICP 证 020026 号
北京创新乐知广告有限公司 提供技术支持
Copyright © 2000-2007, CSDN.NET, All Rights Reserved
GongshangLogo