Zapytanie Oracle, limitowanie rekordow

Zapytanie Oracle, limitowanie rekordow
J9
  • Rejestracja: dni
  • Ostatnio: dni
  • Lokalizacja: Niemcy
  • Postów: 16
0

Witam,
czy jest mozliwosc napisac zapytanie w Oracle majac tabelke posortowana po ID:

screenshot-20211029093833.png

Jako wynik chcialbym otrzymac rekordy zaczynajac od pierwszego, zeby suma Szt < 30, czyli w podanym przykladzie :

screenshot-20211029094004.png

Da sie zwyklym zapytaniem, czy trzeba stosowac jakies petle?

IC
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 24
3

Obczaj sobie temat funkcji analitycznych:

Kopiuj
with rolling_sums as (
  select 
    id, 
    st, 
    sum(st) over (
      order by 
        id rows between unbounded preceeding 
        and current row
    ) as rolling_sum 
  from 
    your_table
) 
select 
  * 
from 
  rolling_sums 
where 
  rolling_sum < 30
woolfik
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 1611
J9
  • Rejestracja: dni
  • Ostatnio: dni
  • Lokalizacja: Niemcy
  • Postów: 16
0

@immanuel_cunt
dziekuje bardzo, dziala jak chcialem (byl tylko maly blad: preceeding zamiast preceding)

@woolfik
to nie calkiem to o co mi chodzilo ale rowniez dziekuje za linka.

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.