Avatar billede Morten Nybegynder
28. september 2004 - 13:37 Der er 1 løsning

Lægge to variabler sammen

Hvorfor giver undenstående NULL i feltet actual_acc?

    DECLARE @days int,
        @i int,
        @Year int,
        @Month int,
        @number bigint,
        @akku bigint,
        @akku1 bigint,
        @value bigint
    SET @days = (SELECT nbrDays FROM dbo.budget_forecast
            WHERE
            strYear = (SELECT datepart(yyyy, GETDATE())-2000+100)
            AND
            strMonth = (SELECT datepart(mm, GETDATE())))


    SET @Year = (SELECT datepart(yyyy, GETDATE())-2000+100)
    SET @Month = (SELECT datepart(mm, GETDATE()))
    SET @i = 1
    SET @akku = 0
    SET @akku1 = 0
    WHILE @i <= @days
    BEGIN
        SET @akku =(SELECT Order_Sales_Amount
                    FROM dbo.count_days
                    WHERE RIGHT(trans_dat,2)= @i)
       
        SET @value = @akku1 + @akku
        UPDATE dbo.DAY_BY_DAY
        SET actual_acc = @value, actual = @akku
        WHERE intYear = @Year and intMonth = @Month and intDay = @i
        SET @i = @i + 1
        SET @akku1 = @value
        SET @akku = 0
    END

Hvis jeg udskifter @akku1 med et tal f.eks. 10 så virker skidtet men ellers giver den bare NULL i tabellen ?

Kan man ikke lægge to variabler sammen - for mig ville det være logisk at sige

SET @akku1=@akku1 + @akku

Men det giver altså også NULL
Avatar billede Morten Nybegynder
28. september 2004 - 14:03 #1
har selv løst den:

Brugte akku1 = Select sum(order_sales_amount
                ...
              Where right(trans_dat,2)<= @i
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Computerworld tilbyder specialiserede kurser i database-management

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester