Jestem nowy w świecie Oracle i SQL. Mam drobny problem z zapytaniem, którego nie mogę wymyślić dla mnie, spędziłem kilka godzin próbując różnych podejść i nie mogę uzyskać oczekiwanego rezultatu. Oto moje zapytanie:Jak używać funkcji MAX() w wyniku podzapytania?
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);
Wewnętrzna kwerenda działa idealnie i zwraca dwa wyniki. Teraz, gdy mam te dwie wartości, próbuję znaleźć sposób na zwrócenie wiersza z maksymalną wartością membership_count, w której ciągle utknę. W powyższym zapytaniu próbowałem użyć klauzuli MAX() w klauzuli where, ale w tym zaznaczeniu ciągle pojawia się błąd "table not found" (co oznacza "g"). Moje pytanie brzmi: jak używać funkcji MAX() w wynikach mojego podkwerendy? Wszelkie przemyślenia lub sugestie byłyby bardzo mile widziane !!!!!
Jeśli nie jesteś tego świadomy, [sqlfiddle] (http://www.sqlfiddle.com) ma dostępną bazę danych Oracle i możesz grać na różnych formatach instrukcji. – hd1