それは同じ質問ではありません: GROUP BY 内で LIMIT を使用して、グループごとに N 個の結果を取得しますか?
しかし、私はそれが似ていることを認めます。
1 人あたり最初の 2 行を選択する必要があります。行は受領年順に並べられています
問題 : 同じ月に 2 つのデータが入力された可能性があります (日付は YYYY-MM を入力)
私が持ってきた(参照された質問に続く)クエリは、大きなループに陥っています。
SELECT *
FROM `table_data` as b
WHERE (
SELECT count(*) FROM `table_data` as a
WHERE a.Nom = b.Nom and a.year < b.year
) <= 2;
サンプルデータ :
A | year | Nom
---------------------
b | 2011-01 | Tim
---------------------
d | 2011-01 | Tim
---------------------
s | 2011-01 | Tim
---------------------
a | 2011-03 | Luc
---------------------
g | 2011-01 | Luc
---------------------
s | 2011-01 | Luc
エクスポートする必要があります:
A | year | Nom
---------------------
b | 2011-01 | Tim
---------------------
d | 2011-01 | Tim
---------------------
a | 2011-03 | Luc
---------------------
g | 2011-01 | Luc