1

inventory という名前のテーブルには、food と brand という名前の 2 つの列があります。テーブルの内容の例を次に示します。

food       |        brand
----------------------------
cookies    | Pepperidge Farm
cookies    | Pepperidge Farm
goldfish   | Pepperidge Farm
cookies    | Oreo
crackers   | Ritz
goldfish   | Pepperidge Farm
crackers   | Ritz
crackers   | Ritz
goldfish   | Pepperidge Farm
goldfish   | Pepperidge Farm

最も人気のある 3 つのアイテム、ブランドの組み合わせをテーブルから取得する mysql クエリを作成しようとしています。私が抱えている問題は、そのブランドが複数のアイテムを持つことができるということですが、最も人気のあるブランドではなく、最も人気のあるブランドとアイテムをカウントしたいと考えています。したがって、上記の表では、クエリは、最も人気のあるものから最も人気のないものへの順序で次を返します (結果は 3 つに制限されます)。

goldfish | Pepperidge Farm
crackers | Ritz
cookies  | Pepperidge Farm
4

1 に答える 1

1

ここにSQLFiddleがあります

SELECT COUNT(*) AS `Rows`, FOOD, BRAND
   FROM `foods`
     GROUP BY FOOD, BRAND
     ORDER BY `Rows` DESC
于 2013-07-28T20:06:08.993 に答える