SQLの条件で、値の最大値で抽出する方法。

WHEREの条件に、date の最大値、つまり、一番最新値を付けたいとき、普通に書こうと思うと、

select *

from xxxx

where max(date)

とやっても、エラーになります。なぜなら、SUMやMAXなどの集計関数はwhereで使えないからです。

ではどうすればいいのかというと、サブクエリを使うことで、解決できます。

select * from xxxxxxx

WEHRE date = (select max(date) from xxxxx );

このように書くことで、MAXしたデータを、WHEREで使うことができます。