Cześć, przygotowuje bazę danych skoczków narciarskich i muszę zrobić perspektywę która będzie klasyfikacją generalną.
Nie mam pojęcia jak na podstawie tej bazy zliczyć punkty czy po prostu odczytać miejsce.
Tzn jak np z polecenia Select imie,nazwisko,punkty from skoki left join zawodnik on(skoki.id_zawodnik=zawodnik.id_zawodnik) where id_zawody=x order by punkty desc;
Da się to zrobić jakoś wyzwalaczami?
Oczywiście wszystko w sql oraclowym.
0
1
row_number(), rank()
0
group by sum(points) having sum(points) i masz kolejność
0
Marcin.Miga napisał(a):
row_number(), rank()
Okej, teraz na każdych zawodach mogę wyznaczyć miejsce, jak z tego zrobić perspektywę która zliczy punkty z wszystkich zawodów?
0
Nested query:
SELECT
name,
SUM(points)
FROM (
SELECT
name,
rank() OVER (PARTITION BY competition_id ORDER BY points)
FROM competitions
) q
GROUP BY name