2010-02-10 38 views
0

在SQL 2005中,我将按地区,办公室,空缺ID列出的所有可用职位分组。然后,我通过执行Count(VacancyStartID)来显示每个办公室的总数,其中有多少人开始了特定的空缺ID。在Count(VacancyStartID)的同一组行中,我需要显示SUM(空缺ID)。然而目前这并没有给出正确的总和,因为有些职位空缺有多个VacancyStartID的,因此vacancyID列出几次,像这样:如何在没有重复项的情况下执行SUM(VacancyID),同时在同一组中显示Count(VacancyStartID)?

office vacancyID Number_of_vacancies  VacancyStartID (person who started a job) 

1   1    2    4567 

1   1    2    5678 


Totals:     4 (needs to be 2) 2 

附: SUM(DISTINCT Number_of_vacancies)也不起作用。

注:这些问题并不适用于这种情况:

How to do SUM(VacancyID) without Duplicates while also showing Count(VacancyStartID) in the same Group?

How can I remove duplicate rows?

How do I remove "duplicate" rows from a view?

Using multiple COUNTs and SUMs in a single SQL statement

回答

0

这是GROUP BY应该是怎样工作的。这不能在单个查询中完成。

顺便说一句,SUM(VacancyID)是什么意思?这似乎没有意义。

相关问题