1

ID、チケット、ユーザーの 3 つの列を持つデータベース テーブル (メモ) があります。

各ユーザーが入力したメモの数と、それらのメモが追加された一意のチケットの数 (ユーザーごとにグループ化) を表示する必要があります。たとえば、John Doe は 100 のメモを 50 の一意のチケットに入力し、Jane Doe は 70 のメモを 65 の一意のチケットに入力しました。それらがどのチケットに追加されたかには興味がありません。

これが私がこれまでに持っているものです。

select count(id) count
from notes
group by user

同じクエリで一意のチケットの数を取得することは可能ですか?

4

2 に答える 2

1

distinctカウント内で使用:

select
  user,
  count(id) note_count,
  count(distinct ticket) ticket_count
from notes
group by user
于 2013-04-19T14:11:12.110 に答える
0

あなたはおそらく SQL の初心者です。クエリは次のようなものです。

select user, count(distinct TicketId) as NumTickets, count(id) as NumNotes
from notes
group by user

句にユーザーを含めてselect、番号が誰に適用されるかがわかるようにする必要があります。名前を付けるときは、 などの予約語は避けた方がよいcountので、 onNumTicketsと otherを付けましたNumNotes

于 2013-04-19T14:11:36.243 に答える