[MySQL] 年度内の最新月を取得する

1 min read

こんなテーブルから最新月(年月)を 1 つ抽出します。

+------+-------+
| year | month |
+------+-------+
| 2012 |    11 |
| 2012 |     3 |
| 2013 |     3 |
| 2012 |    12 |
| 2013 |     1 |
+------+-------+
SELECT DISTINCT year, month
FROM            sample
WHERE           year*100+month between 201204 and 201303
ORDER BY        year DESC, month DESC
LIMIT 1

3 行目の 201204201303 は適度に変更してください。
(2012 年 4 月~ 2013 年 3 月を表してます/年度)