select count(*) from container where datediff(month,jq,'2004-10-18')=0

解决方案 »

  1.   

    你的语句有点看不懂啊,为什么用count(*)这是计算条数吧,我想应该是
    select sum(jq)-sum(cq) from container where jq<='2004-10-1' and cq>='2004-10-31'
      

  2.   

    一行记录就是一个库存量,所以用count没错的计算库存是这个意思:
    一个集装箱存了1天就算1个库存量,第二天又算一个库存量,如果第5天运走了,那这个集装箱实际产生了4个库存量.因此,月库存是把这个月每天的库存相加得到的比如1号库存30,2号60,3号50,那么这三天总库存为30+60+50=140.
      

  3.   

    还有当天进来的集装箱当天就运走的,不算到库存里面我现在的方法是用这个语句
    select count(*) from container where jq<='2004-10-18' and cq>'2004-10-18'
    逐一算出一个月每天的库存量,然后相加
    我想知道是否还有其他更好的方法库存不单单是进来的数量减去出去的数量,这个要注意
      

  4.   

    select count(*) from container where datediff(month,jq,cq)=0 group by convert(varvhar(10),jq,120)