Jumat, 29 November 2019

Looping Pakai IF - PostgreSQL

DO $$
  Declare rownumber bigint;   
    Declare debet1 bigint;   
        Declare kredit1 bigint;   
        Declare saldoakhir1 bigint;
        declare tipeakun INTEGER;

    cur1 CURSOR for select row_number, debet, kredit, saldoakhir from "temporary".tmp_bukubesar order by row_number;   
 begin 
OPEN Cur1 ; 
Loop     
    FETCH  next from Cur1 INTO rownumber, debet1, kredit1, saldoakhir1;    
    EXIT WHEN NOT FOUND;
   
    select tipe_akun into tipeakun from acc_account_number where nomor_akun='2.330';
   
    if tipeakun in (0,3) then
    update "temporary".tmp_bukubesar
    set saldoakhir=(select saldoakhir from "temporary".tmp_bukubesar where row_number < rownumber order by row_number desc limit 1) + debet1 - kredit1
    where row_number=rownumber and row_number >1 and iduser = 123;
    end if;
   
    if tipeakun in (1,2) then
    update "temporary".tmp_bukubesar
    set saldoakhir=(select saldoakhir from "temporary".tmp_bukubesar where row_number < rownumber order by row_number desc limit 1) - debet1 + kredit1
    where row_number=rownumber and row_number >1 and iduser = 123;
    end if;
   
end loop ;  
CLOSE Cur1; 
END $$;

Tidak ada komentar:

Posting Komentar

Dynamic Query - SQL Server

Berikut adalah contoh dari bentuk dari Dynamic Query di SQL Server yang dibungkus ke dalam Store Procedure:  USE [Data00] GO SET ANSI_NULLS ...

Popular Posts