能查询指定日期内的新客户个数 
如在edit1 中:2008-1-1  在edit2 中:2008-2-2 ; 什么叫做新客户 :就是只有一次付款订单的人(从整个历史记录来看) 
查找指定日期内,每天的新客户(每天的新客户 是这样定义的:2008-1-1  的新客户,是从整个历史记录里面看 他只有一个已付款的订单,,如果这位新客户在2008-1-2中再次 有了一个已付款的订单,,则就不是新客户了) 
但是:得把它显示在2008-1-1 这天的新客户个数里面(只显示个数,不显示它的名字) 例如: TB1 
---------------------------------------- 
id ¦订单 ¦日期    ¦是否付款 ¦用户ID |Prices
1 ¦aaaa ¦2008-1-1 ¦  1    ¦123 
--------------------------------- ------写这样的sql语句: 1.查找指定日期内 每天的 新客户个数 
2.客户用  用户ID 来标识,是否付款 中付款的 值为 1(数字); 
3.每天的新客户 是 以当天为 开始 向前 所有的历史记录中 只有一个已付款订单的 人   SELECT Convert(nvarchar(10),日期,120) AS 日期,COUNT(*),sum(Prices)   FROM 表 WHERE 是否付款=1 AND 日期 BETWEEN 日期范围1 AND 日期范围2  GROUP BY Convert(nvarchar(10),日期,120)这个是上面的sql语句,,得到的是 指定日期内 每天的订单数,每天的订单的总金额,,,
我问的是如何把  指定日期内 每天的金额 相加 用一个字段显示出来 

解决方案 »

  1.   

    使用 group by 里面的having 子句。
      

  2.   

    1.查找指定日期内 每天的 新客户个数 :
    select 日期,count(DISTINCT 用户ID) as 用户个数 from TB1 a inner join 
     (select 用户ID ,Min(日期) as 最早日期 from TB1 where 是否付款=1 group by 用户ID) b on
    a.用户ID=b.用户ID
    where a.日期 BETWEEN 日期范围1 and 日期范围2
      

  3.   

    这个是上面的sql语句,,得到的是 指定日期内 每天的订单数,每天的订单的总金额,,, 
    我问的是如何把  指定日期内 每天的金额 相加 用一个字段显示出来 
    ===
    不明白什么意思
    如果你只要一个数字 而不是一个集
    select sum(Prices) from 表 WHERE 是否付款=1 AND 日期 BETWEEN 日期范围1 AND 日期范围2  这就行了