Anda dapat mengelompokkan -hampir- apa pun yang Anda inginkan. Jika Anda bisa mendapatkan sesuatu di kolom untuk menunjukkan apa yang Anda inginkan, Anda bisa mengelompokkannya. Jadi hanya untuk dua periode, Anda cukup mengelompokkan jika:
SELECT * FROM table
GROUP BY if(stamp between "2005-07-01" and "2006-02-01", 0, 1)
Jika Anda membutuhkan periode untuk rentang waktu yang lebih lama (beberapa tahun), Anda dapat menggunakan period_diff untuk membedakan:
SELECT * FROM table
GROUP BY floor(period_diff( DATE_FORMAT(stamp, "%Y%m"), "200507") / 6)
Ini akan memberi Anda jumlah blok 6 bulan yang dilewati antara tanggal Anda dan periode mulai dalam format tahun-bulan.