SQL Server计算两列

时间:2012-10-18 09:00:28

标签: sql count

是否可以计算两列?

我有一个存储应用程序名称的表,以及随着时间推移已启动的用户。

查询日期范围时,最终会得到如下例所示的结果。

| App   | User   |
| App A | User A |
| App A | User A |
| App A | User B |
| App A | User C |
| App A | User D |
| App A | User D |
| App A | User D |
| App B | User A |
| App B | User E |
| App B | User F |
| App C | User A |
| App C | User C |
| App C | User C |
| App C | User C |
| App C | User F |

我想要的是一列显示每个应用启动的应用数量,另一列显示启动该应用的用户数量。

我无法弄明白该怎么做。

任何一个想法?

1 个答案:

答案 0 :(得分:3)

select  App
,       count(*) as Launches
,       count(distinct [User]) as Users
from    Table1
group by
        App

Example at SQL Fiddle.

[User]周围的方括号用于SQL Server。没有它们,您将获得自己的用户名而不是User列。在MySQL中,你会使用反引号。