Hirdetés

Új hozzászólás Aktív témák

  • sztanozs
    veterán

    Sziasztok!

    Segítséget kérnék mert rekurzívban nem vagyok otthon. :(
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    Legyen adott ez az egyszerű táblázat, ebből kellene nekem egy ilyet csinálni:
    1 1
    2 3
    3 6
    4 10
    5 15
    6 21
    7 28
    8 36
    9 45
    10 55
    Azaz az oszlop első két számát (nem id, csak egyszerű példát akartam) összeadom, ez összegét az oszlop következő számával adom össze, majd ennek az összegét a következővel és így tovább.
    Aki vágja a rekurzívat annak kisujjból. Én egyszer írtam életem során egyet, egyszerű volt de megizzadtam vele, ez a része nem megy sajnos. :(
    T-SQL nyelven kellene.

    Üdv
    ZoL

    Nem rekurzív, hanem kurzor - csak hasonlóan hangzik :D
    De ide kurzor sem kell, csak egy while loop

    declare @counter int
    declare @csum int
    set @counter = 0
    set @csum = 0
    while @counter < 10
    begin
    set @counter = @counter + 1
    set @csum = @counter + @csum
    insert into simple_table values(@counter, @csum)
    end

    persze ha nem counter-t kell beletenni, hanem egy másik táblából értékeket, akkor már kell a kurzor (meg ugye az értékeket célszerű sorbarakni, hogy az eredmény determinisztikus legyen - ha annak kell lennie)...

Új hozzászólás Aktív témák