-- 用 case when 语句将日期处理一下撒!

解决方案 »

  1.   

    select 
    convert(varchar(10),Po_Date,120) as Po_Date,Description,
    sum(case when Po_Date between convert(varchar(10),Po_Date,120)+' 08:00:00'
    and convert(varchar(10),Po_Date+1,120)+' 07:59:59' then Quantity else 0 end
    from tablename
    group by convert(varchar(10),Po_Date,120),Description
      

  2.   

    谢谢maco_wang大侠的例句。完全达到要求。
    如果再加一个判断条件:添加一个新列(Po_Day),如果当天是星期一,就在列中添加内容“Mon”;如果当天是星期二,就在列中添加内容“Tue”...;如果当天是星期天,就在列中添加内容“Sun”。
      

  3.   


    select 
    convert(varchar(10),Po_Date,120) as Po_Date,Description,
    sum(case when Po_Date between convert(varchar(10),Po_Date,120)+' 08:00:00'
    and convert(varchar(10),Po_Date+1,120)+' 07:59:59' then Quantity else 0 end,
    (case datename(weekday,Po_Date) when N'星期一' then 'Mon'
                                    when N'星期二' then 'Tue'
                                    ...
                                    when N'星期日' then 'Sun' end) as Po_Day
    from tablename
    group by convert(varchar(10),Po_Date,120),Description
      

  4.   


    alter table tb add Po_Day varchar(10);
    goset language english;
    update tb set Po_Day=datename(weekday,Po_Date)set language 简体中文;
      

  5.   

    多谢楼上各位大侠,不好意思没有一次将要求讲完,要求有变化,麻烦大家再给讲一讲:
    Po_Date             Po_NO   Description   Quantity    Cust_ID
    2011-05-01 09:00:00  001        面粉      1         A01
    2011-05-01 15:30:00  002        面粉      1         B01
    2011-05-02 02:45:00  003        面粉      1         C01
    2011-05-02 05:45:00  004        大米      1         A01
    2011-05-02 08:15:00  005        大米      1         D01
    2011-05-02 11:20:00  006        大米      1         C01
    ..........
    2011-05-15 13:50:00  020        大米      1         D01
    2011-05-30 09:20:00  021        面粉      1         A01财务的要求是:分类汇总一个月来每天指定一个客户(Cust_ID)下单的数量(Quantity),但每天的时间段必须是当天早上08:00:00到第二天早上07:59:59。1、请大家注意时间段,因为第二天07:59:59之前所接的订单也算是前一天的。请大家注意时间段,因为第   二天07:59:59之前所接的订单也算是前一天的。
    2、以5月份数据为例,即使5月的某一天(假设13号),该指定的客户没有下订单,也要给一个记录来,只不  过下单的数量(Quantity)为零。  麻烦大家再帮一忙,先谢谢大伙了!
      

  6.   

    多谢楼上各位大侠,不好意思没有一次将要求讲完,要求有变化,麻烦大家再给讲一讲:
    Po_Date Po_NO Description Quantity Cust_ID
    2011-05-01 09:00:00 001 面粉  1   A01
    2011-05-01 15:30:00 002 面粉  1   B01
    2011-05-02 02:45:00 003 面粉  1   C01
    2011-05-02 05:45:00 004 大米  1   A01
    2011-05-02 08:15:00 005 大米  1   D01
    2011-05-02 11:20:00 006 大米  1   C01
    ..........
    2011-05-15 13:50:00 020 大米  1   D01
    2011-05-30 09:20:00 021 面粉  1   A01财务的要求是:分类汇总指定某个客户(Cust_ID)一个月来每天下单的数量(Quantity),但每天的时间段必须是当天早上08:00:00到第二天早上07:59:59。1、请大家注意时间段,因为第二天07:59:59之前所接的订单也算是前一天的。请大家注意时间段,因为第  二天07:59:59之前所接的订单也算是前一天的。
    2、以5月份数据为例,即使5月的某一天(假设13号),该指定的客户没有下订单,也要给一个记录来,只不  过下单的数量(Quantity)为零。  麻烦大家再帮一忙,先谢谢大伙了!