CASE:
Kita ingin mengubah tanggalnya aja, tanpa mengubah tahun dan bulannya
DO $$
Declare idkrt int;
Declare bulanke int;
DECLARE idaset int;
Declare jwl date;
DECLARE jmlhari int;
DECLARE tanggal int;
cur1 CURSOR for select id,
depresiasi_bulan_ke,
id_aset_inventaris,
jwl_depresiasi,
DATE_PART('days',
DATE_TRUNC('month', jwl_depresiasi)
+ '1 MONTH'::INTERVAL
- '1 DAY'::INTERVAL
) jumlah_hari
from m_kartu_aset_inventaris where id_aset_inventaris in (2659, 2658) order by id_aset_inventaris, depresiasi_bulan_ke;
begin
OPEN Cur1 ;
Loop
FETCH next from Cur1 INTO idkrt, bulanke, idaset, jwl, jmlhari;
EXIT WHEN NOT FOUND;
select (date_part('day', tanggal_beli)) into tanggal from m_aset_inventaris where id=idaset;
if jmlhari >= tanggal then
update m_kartu_aset_inventaris
set jwl_depresiasi=cast(CONCAT(DATE_PART('YEAR',jwl_depresiasi),'-',DATE_PART('MONTH',jwl_depresiasi),'-',tanggal) as date)
where id_aset_inventaris=idaset and depresiasi_bulan_ke=bulanke;
END IF;
if jmlhari < tanggal then
update m_kartu_aset_inventaris
set jwl_depresiasi=cast(CONCAT(DATE_PART('YEAR',jwl_depresiasi),'-',DATE_PART('MONTH',jwl_depresiasi),'-',jmlhari) as date)
where id_aset_inventaris=idaset and depresiasi_bulan_ke=bulanke;
END IF;
end loop ;
CLOSE Cur1;
END $$;
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
-
CONTOH PENGGUNAAN LOOPING CASE UNTUK UPDATE TANGGAL BAYAR YANG NULL PADAHAL ANGSURAN DI ATASNYA ADA TGL PEMBAYARANNYA declare @norek varc...
-
UBAH FORMAT TANGGAL CONTOH DI DATABASE FORMATNYA YYYY/MM/DD, KITA UBAH JADI DD/MM/YYYY select a.nomor_register_aplikasi no_rekening, a.na...
-
SELECT THN, BLN_THN, KODE, COUNTER_MAX, COUNTER, PANJANG, CASE WHEN PANJANG=4 THEN TO_CHAR(COUNTER) WHEN PANJANG=3 T...
Tidak ada komentar:
Posting Komentar