0

次のような表があるとします。

DATE    USER         TYPE        DEPT
3/1/13  Team1        Add         Finance
3/1/13  Team1        Add         Collections
3/2/13  Team1        Delete      Finance
3/2/13  Team1        Delete      Finance
3/2/13  Team1        Delete      Finance
3/3/13  Team1        Delete      Collections
3/3/13  Team1        Change      Finance
3/3/13  Team1        Change      Finance
3/4/13  Team1        Add         Finance
3/5/13  Team1        Delete      Collections

どうすればこのような出力を得ることができますか?

TYPE        DEPT        COUNT
Add         Collections 1
Add         Finance     2
Change      Collections 0 (note: this line could be omitted if COUNT = 0)
Change      Finance     2
Delete      Collections 2
Delete      Finance     3

USER = Team1 と日付範囲も指定する必要があります。私はこれまでのところ以下を持っていますが、うまくいきません:

SELECT user, type, Count(*) AS Total
FROM table1
GROUP BY user, type
HAVING (((user)="Team1"));

これは私に与えます:

USER    TYPE    Total
Team1   Add     3
Team1   Change  2
Team1   Delete  5

しかし、DEPT ごとに分類されておらず、日付範囲を指定する方法がわかりません。

いつもありがとうございます!

編集:私はそれを理解したと思います:

SELECT User, Type, Dept, Count(*) AS Total
FROM Table1
WHERE (((Date) Between #3/1/2013# And #3/5/2013#))
GROUP BY User, Type, Dept
HAVING (((User)="Team1"));
4

3 に答える 3

1

これを試すことができると思います。

SELECT Type, Dept, Count(*) AS Total
FROM Table1
WHERE (((Date) Between #3/1/2013# And #3/5/2013#))
AND (((User)="Team1"))
GROUP BY Type, Dept
于 2013-04-01T17:43:30.747 に答える
1

TYPE と DEPT でグループ化し、USER を where 句に入れる必要があります。

select TYPE, DEPT, count(*) as TOTAL
from table1 where USER = 'Team1'
group by TYPE, DEPT
having TOTAL > 0
于 2013-04-01T17:40:37.223 に答える
1

列で拡張する必要がGROUP BYありDEPTます:

GROUP BY user, type, dept

日付範囲条件を満たすには、WHERE次の部分を追加します。

WHERE date >= startDate AND date <= endDate

WHERE1 人のユーザーのデータのみを取得するには、別の条件を追加します。

WHERE user = "Team1"

クエリ全体は次のようになります。

SELECT user, type, dept, Count(*) AS Total
FROM table1
WHERE date >= startDate AND date <= endDate AND user = "Team1"
GROUP BY user, type, dept

行を削除するために何もする必要はありません-Total = 0それを含むアイテムはグループソースにないため、そこにはありません。typedept

于 2013-04-01T17:42:31.130 に答える