私は、OracleとSQLの世界で初めてです。私は私の人生のために私が把握することができないクエリでわずかな問題を抱えて、私は別のアプローチを試して数時間を費やし、私は期待した結果を得ることができません。だから私のクエリ:MAX()をサブクエリーの結果に使用する方法は?
SELECT *
from(Select membership.mem_desc,membership.mem_max_rentals,membership_history.mem_type,
count(membership_history.MEM_TYPE) as membership_count
from membership_history
JOIN membership ON membership.mem_type = membership_history.mem_type
group by (membership_history.mem_type,membership.mem_desc,membership.mem_max_rentals)
) g
WHERE g.membership_count = (select MAX(membership_count) from g);
したがって、内側のクエリは完全に動作し、2つの結果を返します。これで2つの値が得られましたので、member_countの最大値を持つ行を返す方法を理解しようとしています。上記のクエリでは、MAX()をwhere節で試してみましたが、その中では、 'テーブルが見つかりません'( 'g'の意味)というエラーが発生しています。だから私の質問は私のサブクエリの結果にMAX()関数を使用する方法です?どんな考えや提案も大変ありがとうございます!!!!!
[sqlfiddle](http://www.sqlfiddle.com)にはOracleが用意されており、さまざまな形式の文で再生できます。 – hd1