次のような日付、サンプルデータを含む注文メタを格納する注文テーブルがあります
date |order-id
2010-12-16|106
2010-12-18|112
2009-03-05|115
2009-03-05|122
今度は、同じ月のすべての注文をグループ化するフォルダーを作成し、その月の最初の注文をショーケースとして選択する必要がありますが、下のクエリの最後の行を常に選択することでグループ化されているように見えます
SELECT orders.id, order.date from orders
GROUP BY strftime('%Y-%m', orders.date)
毎月の最後の行を返します
2010-12-18|112
2009-03-05|122
だから帰って欲しい
2010-12-16|106
2009-03-05|115
(106:月の初め)
(115:他の日付と同じですが、その月の並べ替え順序クエリを実行すると、これは最初の日付と一致します)
JOINクエリを試しましたが、同じ日に複数の注文がない場合は機能しますが、2009-03の場合でも、最初の行ではなく最後の行が返されます...
SELECT o.id, o.date
FROM orders o
JOIN
(SELECT MIN(date) as first_date FROM orders
GROUP BY strftime('%Y-%m', orders.date)
) as sorted_orders
ON o.creation_date=sorted_order.first_date
GROUP BY strftime('%Y-%m', orders.date)
他に試すことができるものはありますか?