Script DP4 : Jumlah Wajib KTP per Kecamatan

script DP4, Siak2DP4, DP4 Generator Berikut adalah script yang saya gunakan untuk menghitung jumlah wajib KTP, laki-laki dan perempuan, per kecamatan. Wajib KTP adalah seluruh penduduk yang pada tanggal pemilihan yang telah ditentukan telah berumur 17 (tujuh belas) tahun atau belum 17 (tujuh belas) tahun namun sudah atau pernah menikah. Script ini juga digunakan dalam aplikasi Suplemen SIAK (Siak2DP4). Sebelum menjalankan script ini pastikan anda telah mengganti 01/01/2013 dengan tanggal pemilihan di tempat anda. Ingat formatnya adalah dd/mm/yyyy.

  
/* Script DP4, Bambang Mahesthi, http://adminsiak.blogspot.com, http://www.facebook.com/suplemenSIAK */
select bio.no_prop
|| '.'
|| to_char (bio.no_kab, '09')
|| '.'
|| to_char (bio.no_kec, '09') as kodekec,
initcap (kec.nama_kec) as namakec,
sum
(case
when ( (months_between (to_date ('01/01/2013', 'dd/mm/yyyy'),
bio.tgl_lhr
) >= 204
)
and jenis_klmin = 1
)
then 1
else 0
end
) as "L>17",
sum
(case
when ( (months_between (to_date ('01/01/2013', 'dd/mm/yyyy'),
bio.tgl_lhr
) >= 204
)
and jenis_klmin = 2
)
then 1
else 0
end
) as "P>17",
sum (case
when ((months_between (to_date ('01/01/2013', 'dd/mm/yyyy'),
bio.tgl_lhr
) >= 204
)
)
then 1
else 0
end
) as "LP>17",
sum
(case
when ( ( (months_between (to_date ('01/01/2013',
'dd/mm/yyyy'
),
bio.tgl_lhr
) < 204
)
and bio.stat_kwn <> 1
)
and jenis_klmin = 1
)
then 1
else 0
end
) as "L<17Kawin",
sum
(case
when ( ( (months_between (to_date ('01/01/2013',
'dd/mm/yyyy'
),
bio.tgl_lhr
) < 204
)
and bio.stat_kwn <> 1
)
and jenis_klmin = 2
)
then 1
else 0
end
) as "P<17Kawin",
sum
(case
when (( (months_between (to_date ('01/01/2013', 'dd/mm/yyyy'),
bio.tgl_lhr
) < 204
)
and bio.stat_kwn <> 1
)
)
then 1
else 0
end
) as "LP<17Kawin",
sum
(case
when ( (months_between (to_date ('01/01/2013', 'dd/mm/yyyy'),
bio.tgl_lhr
) >= 204
)
or ( (months_between (to_date ('01/01/2013',
'dd/mm/yyyy'),
bio.tgl_lhr
) < 204
)
and bio.stat_kwn <> 1
)
)
then 1
else 0
end
) as "Jumlah"
from biodata_wni bio, setup_kec kec
where kec.no_prop = bio.no_prop
and kec.no_kab = bio.no_kab
and kec.no_kec = bio.no_kec
and bio.flag_status = 0
group by bio.no_prop, bio.no_kab, bio.no_kec, kec.nama_kec
order by bio.no_kec;


Perhatikan, bahwa di setiap query kependudukan, saya tidak pernah menghitung penduduk dengan flag_status selain 0, kecuali untuk menghitung jumlah penduduk meninggal (flag_status = 1). Berikut adalah hasil script di atas ketika dijalankan menggunakan TOAD



script DP4, Siak2DP4, DP4 Generator

Categories: , ,

3 Responses so far.

  1. Anonymous says:

    dear admin..
    terima kasih script nya bermanfaat..
    boleh kah saya bertanya....di dalam script ada angka 204,
    angka tersebut fungsinya untuk apa ya? apakah kita ganti2 sesuai dengan waktu penghitungan Wajib KTP? atau selalu 204 ?

    Atas perhatian nya disampaikan terima kasih :)

  2. amanyauna says:

    fungsi months_between() menghitung jumlah bulan, jadi untuk memilih hanya yang usia 17 tahun, maka yang dihitung adalah jumlah bulannya (17 x 12 bulan) = 204 ;)

  3. Anonymous says:

    ogitu...terima kasih atas pencerahannya :)

Leave a Reply