たとえば、販売者ごとに上位 10 位の顧客のみを取得したいと考えています。したがって、次のようになります (トップ 10 なし)。
Select seller, customer, sells from table order by seller asc, sells desc
しかし、これですべての値が得られます。各販売者の最初の 10 人の顧客のみが必要です。
これは ms-access 2003 でも可能ですか? はいの場合、ヒントを教えてください、ありがとう;)
次の行で:
SELECT seller,
customer,
sells
FROM table a
WHERE customerid IN (SELECT TOP 10 customerid
FROM table b
WHERE b.sellerid = a.sellerid
ORDER BY sells DESC)
ORDER BY seller ASC,
sells DESC
MS Access は一致を返すため、10 を超える結果が返される可能性があることに注意してください。正確に 10 個が必要な場合は、販売だけでなく一意の ID で注文することもできます。