0
私が抱えている問題の例を教えてください。たとえば、すべての注文と購入を挿入するテーブルorder
があります。ベストセル製品の製品ランクを取得するMySQL
表A(orders
は):
+--------------------------+
| CustomerKey | ProductKey |
+--------------------------+
| 306545 | pro1 |
| 597864 | pro3 |
| 784678 | pro2 |
| 905479 | pro3 |
| 306545 | pro1 |
| 348965 | pro3 |
| 784678 | pro3 |
+--------------------------+
今私は注文し、私たちの最も売れている製品を取得し、例えば最も売れている製品のリストにPRO3ランクを取得したいと思います。
クエリ出力:
+-------------------------------+
| id | ProductKey | numberSold |
+-------------------------------+
| 1 | pro3 | 4 |
| 2 | pro1 | 2 |
| 3 | pro2 | 1 |
+-------------------------------+
私はこのクエリを書いた:
select ProductKey,
count(1) as numberSold
from A group
by ProductKey
order by count(1) desc
結果は私のために有用ではありません。例えば、私はベストセラーの製品にランクpro27を取得する必要があります(当社10万の製品を持っている!)
+-------------------------------------+
| id | ProductKey | numberSold | rank |
+-------------------------------------|
| 1 | pro3 | 4 | 1 |
| 2 | pro1 | 2 | 2 |
| 3 | pro2 | 1 | 3 |
+------------------------------+------+
お待ちください。「SELECT ProductKey FROM A ORDER BY numberSold DESC LIMIT 1'」とは何ですか?あなたはクエリで最高の売り手を得ます。 – GrumpyCrouton
参照:[私は非常に単純なSQLクエリと思われるものに対してMCVEを提供するのはなぜですか?](https://meta.stackoverflow.com/questions/333952/why-should-i-provide-an-mcve非常にシンプルなSQLクエリのようなものです) – Strawberry