1

2つの列を数えることは可能ですか?

アプリケーション名と、時間の経過とともに起動したユーザーを格納するテーブルがあります。

日付範囲を照会すると、次の例のような結果になります。

| 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 |

私が取得しようとしているのは、アプリごとのアプリの起動数を示す列と、そのアプリを起動したユーザーの数を示す列です。

私はそれを行う方法を理解できません。

アイデアはありますか?

4

1 に答える 1

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

SQLフィドルでの例。

角かっこ[User]はSQLServer用です。それらがないと、列の代わりに独自のユーザー名を取得することになりUserます。MySQLでは、バッククォートを使用します。

于 2012-10-18T09:03:46.877 に答える