Jumat, 29 November 2019
Looping Angka Urut - PostgreSQL
DO $$
DECLARE
iterator INTEGER; -- we can init at declaration time
idref integer;
idsandi varchar;
cur2 cursor for select id_daftar_ref, sandi from m_referensi_lapbul_ojk_detail_backup where id is NULL;
BEGIN
iterator :=19;
open cur2;
Loop
fetch next from cur2 into idref, idsandi;
EXIT WHEN NOT FOUND;
UPDATE m_referensi_lapbul_ojk_detail_backup
set id=iterator
where id is NULL and id_daftar_ref=idref and sandi=idsandi;
iterator := iterator + 1;
-- do stuff
END LOOP;
close cur2;
END $$;
-------------------------
DO $$
DECLARE
iterator INTEGER; -- we can init at declaration time
BEGIN
iterator :=1;
WHILE iterator < 999
LOOP
insert into temp_urut (count)
values (iterator);
iterator := iterator + 1;
-- do stuff
END LOOP;
END $$;
----- update angka urut pakai row_number
with new_numbers as (
select COUNT,
row_number() over (order by COUNT) as urutan
from temp_urut
)
update temp_urut
set no_urut = nn.urutan
from new_numbers nn
where nn.COUNT = temp_urut.COUNT;
-----
DO $$
DECLARE
iterator INTEGER;
urut INTEGER;
cur1 cursor for select count from temp_urut;
BEGIN
iterator :=1;
OPEN Cur1 ;
Loop
FETCH next from Cur1 INTO urut;
EXIT WHEN NOT FOUND;
UPDATE temp_urut
set no_urut=concat('000',iterator)
where count=urut;
iterator := iterator + 1;
END LOOP;
CLOSE Cur1;
END $$;
hasilnya
1 0001
2 0002
3 0003
4 0004
5 0005
Langganan:
Posting Komentar (Atom)
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
-
select round(5.123456 , 2) from dual ==> 5.12 select round(5.87654 , 2) from dual ==> 5.88 select floor(5.89) from dual ==> 5 s...
-
round((case when adjpk.nilai_jaminan<>0 then ((tabkredit.baki*100)/(COALESCE(adjpk.nilai_jaminan,0))) els...
-
USE [DATABASENYA] GO SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO CREATE PROCEDURE [dbo].[SendEmailHardiskSize] as begin ...
Tidak ada komentar:
Posting Komentar