0

これが私のテーブルです

+----+---------------+-------+
| id | product name  | cat   |
+----+---------------+-------+
| 0  | product A     | 1     |
| 1  | product B     | 2     |
| 2  | product C     | 1     |
| 3  | product D     | 3     |
+----+---------------+-------+

私が達成しようとしている出力は次のとおりです。

製品A
製品C
製品B
製品D

私が扱っているクエリは次のとおりです。

SELECT * FROM products GROUP BY cat ORDER BY id ASC

現在、私は MySQL に非常に慣れていません。要するに、結果をグループ化し、グループ内で並べ替えようとしています。

上記のクエリ (逐語的) では、構文エラーが発生します。

少し調査した後 (同様の問題のある投稿をいくつか見て)、この機能を完了するには JOIN を使用する必要があると思います。しかし、どこから始めればよいかわかりません。

誰でも助けることができますか?

4

2 に答える 2

1

ここでグループ化が必要かどうかわかりません。これを試して:

SELECT * from products ORDER BY cat ASC, id ASC

これは、最初に猫で、次に id で並べ替えます。このクエリを最適化するには、cat フィールドにインデックスが必要であることに注意してください (既に id が主キーであると想定しています)。

于 2012-08-03T15:49:46.517 に答える
-1

あなたがする必要があるように私には思えます

SELECT * FROM products ORDER BY cat ASC

探している出力を取得します。

于 2012-08-03T15:50:33.497 に答える