海老原です。
> categoryごとにcntが最大のデータを1回のSQL発行で
> 取得できないかと思っています。
こんなんでどうですか?
SELECT *
FROM test t1
WHERE NOT EXISTS (
SELECT 1
FROM test t2
WHERE t2.category = t1.category AND t2.cnt > t1.cnt);
オプティマイザ次第ですが、(category, cnt)でインデックスでも作って
おけば、max関数 + group byより良さそうな気がします。
--
海老原 雄一郎 / EBIHARA, Yuichiro
Email: ebihara @ iplocks.co.jp