日期:2014-05-19  浏览次数:20432 次

求一SQL语句,单表。有数据。
主键:visit_num
字段:   visit_date     日期
            saler               销售员
            point               分值

-----------------------------------
单据号   日期                   销售员       分值
-----------------------------------
A0001     2005-02-01       张三       30
A0002     2005-02-01       张三       30
A0003     2005-02-01       张三       30
A0004     2005-02-01       张三       30
A0005     2005-02-01       张三       30
--上面是一份单据
--对于一份单据,分值是相同的,而且销售员也肯定是同一人。
    日期也相同

A0006     2005-02-01       李四       20
A0007     2005-02-01       李四       20
A0008     2005-02-01       李四       20
A0009     2005-02-01       李四       20
A0010     2005-02-01       李四       20
A0011     2005-02-01       李四       20
A0012     2005-02-01       李四       20
--上面是同一天的第二份单据(其它销售员)
--对于一份单据,分值是相同的,而且销售员也肯定是同一人。
    日期也相同

A0001     2005-02-02       张三       40
A0002     2005-02-02       张三       40
A0003     2005-02-02       张三       40
A0004     2005-02-02       张三       40
A0005     2005-02-02       张三       40


求每个销售员所有日期内的分值和
----------------------------------
张三         70(第一份单据的30+第三份的40)
李四         20(第二份单据的20)

------解决方案--------------------
Select
销售员,
SUM(分值) As 分值和
From
(Select Distinct 日期, 销售员, 分值 From TableName) A
Group By
销售员
------解决方案--------------------
或者

Select
销售员,
SUM(分值) As 分值和
From
(Select 日期, 销售员, Max(分值) As 分值 From TableName Group By 日期, 销售员) A
Group By
销售员