2

学校の課題では、「その製品を販売したセールスマンの数について、製品ごとに注文の概要を説明する」必要があります。

VerkoperNr(Salesman ID)、ProductNr(Product ID)、Aantal(Amount)の 3 つの列があります。


データベース:

データベース

私のクエリ: SELECT ProductNr, COUNT(VerkoperNr) FROM Omzet GROUP BY ProductNr, VerkoperNr. これは以下を返します:

結果

ただし、セールスマンが製品を販売した回数は必要ありません。特定の製品を何人のセールスマンが販売したかを知る必要があります。したがって、3 行を返す代わりに がProductNumber 16386必要COUNT(VerkoperNr) of 3です (各行は、セールスマンがその製品を販売した回数です)


つまり 、3 行ではなく 3 行を返すクエリが必要です。

4

2 に答える 2

3

したいだけでGROUP BY ProductNr、ではありませんGROUP BY ProductNr, VerkoperNr。それ以外の場合、クエリは問題ありません。

于 2012-12-30T20:42:41.890 に答える
1

SQL Fiddleを取得しますProductNumber 16386 with COUNT(VerkoperNr) of 3

SELECT DISTINCT(ProductNr), COUNT(VerkoperNr) FROM Omzet GROUP BY VerkoperNr

これも機能するはずです:

SELECT VerkoperNr, count(ProductNr) 
FROM table_name GROUP BY VerkoperNr

SQL フィッフル

于 2012-12-30T20:39:05.573 に答える