Prosta funkcji grupująca

0

Select
max(pensja)
from tabela
group by pensja

tabela pensja
Imię Nazwisko Pensja

Powyżej wyswietli tylko wartosc najwiekszej pensji
Jak wyświetlić wszystkie dane czyli imie, nazwisko i najwieksza pensje pracownika.
Wynikiem ma być tylko jedna kolumna czyli osoba ktora najwiecej zarabia.

Select
imie,
nazwisko
max(pensja)
from tabela
group by pensja,imie, nazwisko

Tak tez nie może bo pogrupuje po wszystkich danych czyli pokaze wszystkie wiersze.

1

cos w stylu

select imie, nazwisko, pensja from
(select imie, nazwisko, pensja, max(pensja) over (partition by imie, nazwisko) max_pensja from tabela) where max_pensja = pensja
0
SELECT * FROM
(SELECT Imie, Nazwisko, Pensja FROM tabela order by Pensja DESC)
WHERE rownum = 1

lub

SELECT * FROM
(SELECT Imie, Nazwisko, Pensja FROM tabela
WHERE pensja = (SELECT max(Pensja) FROM tabela group by pensja))
WHERE rownum = 1
0

Chodziło mi o sposób jakim zrobił katelx. Dzięki

1 użytkowników online, w tym zalogowanych: 0, gości: 1