Pobranie z bazy rekordów, których suma jest róna podanej wartości

0

Cześć
mam tabele z uczniami w której mam imie, nazwisko, klasa, wiek

jak pobrać pierwszych x uczniów, których suma wieku jest równa np 50?

0

Którzy uczniowie są pierwsi?

0

No wiem, mój błąd, nieprecyzykna nazwa. Chodzi mi o to ze mamy uczniow posortowanych po dowolnej kolumnie i chodzilo mi o x uczniow w wybranej kolejnosci sortowania

0

LIMIT X

0

Która edycja sql servera? Co w sytuacji kiedy, żadna suma nie da 50?

0

select z tego https://stackoverflow.com/questions/2120544/how-to-get-cumulative-sum plus warunek na sumę <= wartość

0

To co mi przychodzi do głowy to użyć pętli, albo czegoś podobnego do pętli. W T-SQL jest pętla while

0

@Panczo:

SqlServer 2012/2014.
W przypadku braku sumy, nie zwracamy nic

0

Mozna tak:

with cRS as (
select *, sum(wiek) over (order by nazwisko) rs from u
)
select * from cRS where rs <= 55 and exists(select * from cRS where rs = 55)

http://sqlfiddle.com/#!6/cd313/2

55 bo taką sumę mam w przykładowych danych

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