個別の日付、それらの日付に関連付けられている電話番号、および日付ごとの電話番号の数を取得するクエリがあります。
たとえば、日付と電話番号を含むデータベースがあり、結果を
9/2005 5554446666 3
9/2005 4445556666 1
10/2005 1112223333 1
11/2005 2223334444 2
このクエリで日付とカウントを取得できます。
SELECT DISTINCT date, count(phone) AS count
FROM calls
GROUP BY date
取得できないように見えるのは、「count」がカウントしている電話番号です。一意の値のリストの単一のインスタンスを取得するには、何らかの集計関数が必要だと思いますが、First()と他のいくつかはSQLエラーをスローするだけです。サブクエリは必要ですか?
SELECT date, PhoneNumber, count(phone) AS count
FROM calls
GROUP BY date, PhoneNumber
そうすべきだと思います
あなたは次のようなことを試してみたいかもしれません
SELECT Date, Phone, Count(*) As Count From Calls GROUP BY Date, Phone
これにより、各日付の各電話番号の集計と、その日付にその番号が表示された回数がわかります。
SELECT date, phone, count(phone) AS count FROM calls GROUP BY date, phone
(GROUP BYでDISTINCTを使用する必要はありません。)
phoneではなくdateでグループ化しているためです。
日付を1つのグループにまとめると、3つの異なる数値が存在する可能性があり、SQLで目的の数値を知ることは不可能です。
以下をお試しください
通話件数(電話)
Distinct Countを提供します。