Presentasi sedang didownload. Silahkan tunggu

Presentasi sedang didownload. Silahkan tunggu

Pengelolaan Database Kependudukan

Presentasi serupa


Presentasi berjudul: "Pengelolaan Database Kependudukan"— Transcript presentasi:

1 Pengelolaan Database Kependudukan

2 Tujuan & Sasaran Tujuan Meningkatkan kemampuan Administrator Database Kabupaten/Kota dalam pengelolaan Database Kependudukan. Sasaran Memahami perintah dasar SQL (Structured Query Language) sebagai pondasi bagi Administrator Database dalam mengelola basis data.

3 SQL (Structured Query Language)
Adalah sekumpulan perintah khusus yang digunakan untuk mengakses data dalam database relasional. Dengan SQL, kita dapat mengakses database, menjalankan query untuk mengambil data dari database, menambahkan data ke database, menghapus data di dalam database, dan mengubah data di dalam database.

4 Dasar Perintah SQL DDL atau Data Definition Language
DDL merupakan perintah SQL yang berhubungan dengan pendefinisian suatu struktur database, dalam hal ini database dan table. Perintah SQL yang termasuk dalam DDL antara lain : CREATE, ALTER, RENAME, DROP. DML atau Data Manipulation Language DML merupakan perintah SQL yang berhubungan dengan manipulasi atau pengolahan data atau record dalam table. Perintah SQL yang termasuk dalam DML antara lain : SELECT, INSERT, UPDATE, DELETE.

5 Dasar Perintah SQL DCL atau Data Control Language
DCL merupakan perintah SQL yang berhubungan dengan pengaturan hak akses user, baik terhadap server, database, table maupun field. Perintah SQL yang termasuk dalam DCL antara lain : GRANT, REVOKE.

6 Perintah SELECT SELECT digunakan untuk query atau mengambil data dari tabel dalam database. Sebuah query dapat mengambil informasi dari kolom tertentu atau dari semua kolom dalam tabel. Untuk membuat SQL SELECT sederhana, harus menentukan nama kolom dan nama tabel.

7 Bentuk Lengkap SELECT SELECT column_list FROM table-name [WHERE Clause] [GROUP BY clause] [HAVING clause] [ORDER BY clause]; table-name adalah nama tabel dari mana informasi tersebut diambil. column_list mencakup satu atau lebih kolom dari data yang diambil. Kode dalam kurung adalah opsional.

8 Contoh Penggunaan Perintah SELECT
Contoh 1 : Menampilkan semua data dalam tabel biodata_wni Select * From biodata_wni Contoh 2 : Menampilkan nik dan nama lengkap Select nik, nama_lgkp Contoh 3 : Menampilkan nik, nama lengkap, jenis_klmin dengan hanya mengambil jenis_klmin bernilai 1 Where jenis_klmin=1

9 Contoh Penggunaan Perintah SELECT, WHERE, GROUP BY, ORDER BY dan HAVING
Contoh 1: Penggunaan Group By Select no_kab, no_kec From biodata_wni Group by no_kab, no_kec Contoh 2: Penggunaan Order By Order By no_kab, no_kec Contoh 3 : Penggunaan Having select no_kab,no_kec, jenis_klmin,count(nik) group by no_kab, no_kec, jenis_klmin having count(nik)>20000

10 Contoh Penggunaan Perintah SELECT, WHERE, GROUP BY, ORDER BY dan HAVING
Contoh 4 : Penggunaan Perintah SELECT, WHERE, GROUP BY, ORDER BY dan HAVING secara bersamaan. select no_kab,no_kec, jenis_klmin,count(nik) From biodata_wni Where jenis_klmin=1 Group by no_kab, no_kec, jenis_klmin Having count(nik)>20000 Order by no_kab, no_kec

11 SQL Alias Untuk mendefinisikan kolom dan table agar kolom yang dipilih lebih mudah ditulis dan dibaca. Contoh : Select a. nik, a.nama_lgkp From biodata_wni a Where a.jenis_klmin=1

12 Operator yang kita kenal di Oracle
1. Operator Logika : AND, OR, NOT 2. Operator Aritmatika : +, -, *, /, MOD 3. Operator Relational : <, <=, >, >=, between, like, in 4. Operator Persamaan : =, <> 5. Operator Penggabungan : ||

13 FUNGSI YANG SERING DIGUNAKAN DALAM ORACLE 1. Fungsi Numeric (bilangan)
n: nilai, p: presisi Keterangan Contoh Hasil ABS(n) Merubah menjadi nilai absolute ABS(1) 1 ABS(-1) CEIL(n) Pembulatan ke atas CEIL(2.43) 3 CEIL(-1.6) -1 FLOOR(n) Pemotongan bilangan di belakang koma FLOOR(2.69) 2 FLOOR(-1.6) -2 TRUNC(n,p) Melakukan pemotongan pada bilangan pecahan dengan presisi yang diinginkan TRUNC(2.435, 2) 2.4 TRUNC(124.56, 3) 120 ROUND(n, p) Melakukan pembulatan pada bilangan pecahan dengan presisi yang diinginkan FLOOR(2.69,1) 2.7 FLOOR(2.43,2)

14 FUNGSI YANG SERING DIGUNAKAN DALAM ORACLE 2. Fungsi String (teks)
Keterangan Contoh Hasil LOWER (s) Mengubah string menjadi huruf kecil LOWER ('CONTOH') contoh UPPER (s) Mengubah string menjadi huruf besar UPPER ('contoh') CONTOH INITCAP (s) Mengubah hurup awal tiap kata menjadi huruf besar INITCAP ('CONTOH fungsi') Contoh Fungsi LPAD (s,n,pat_value) Memampatkan string sampai panjang tertentu dengan manambahkan karakter di sebelah kiri LPAD (1,3,'0') 001 RPAD (s,n,pat_value) Memampatkan string sampai panjang tertentu dengan manambahkan karakter di sebelah kanan 100 LTRIM (s,[s_trim]) Melakukan pemotongan terhadap karakter tertentu di sebelah kiri string, jika "[s_trim]" tidak digunakan akan menghilangkan "spasi" disebelah kiri LTRIM ('CONTOH FUNGSI','CONTOH') FUNGSI LTRIM (' FUNGSI') RTRIM (s,[s_trim]) Melakukan pemotongan terhadap karakter tertentu di sebelah kiri string, jika "[s_trim]" tidak digunakan akan menghilangkan "spasi" disebelah kanan LTRIM ('CONTOH FUNGSI','FUNGSI') LTRIM (' CONTOH ') TRIM ([s_trim from] s) Melakukan pemotongan terhadap karakter tertentu di sebelah kiri dan kanan string, jika "[s_trim from]" tidak digunakan akan menghilangkan "spasi" disebelah kanan dan Kiri TRIM ('I' from 'INI FUNGSI') NI FUNGS TRIM (' INI FUNGSI ') INI FUNGSI

15 FUNGSI YANG SERING DIGUNAKAN DALAM ORACLE 2
FUNGSI YANG SERING DIGUNAKAN DALAM ORACLE 2. Fungsi String (teks) ……lanjutan Fungsi Keterangan Contoh Hasil CONCAT (s1,s2,...) Sama fungsingya dengan ||,untuk menggabungkan string CONCAT ('CONTOH',' FUNGSI') CONTOH FUNGSI SUBSTR (s,posisi,panjang) Mengambil string dari suatu string SUBSTR('CONTOH FUNGSI',4,3) TOH LENGTH (s) Mendapatkan Panjang suatu string LENGTH('CONTOH') 6 REPLACE (s,'s_lama','s_baru) Mengganti strng dalam suatu string. REPLACE('CONTOH','O','I') CINTIH INSTR (s,s_cari [, pos_mulai]) Mendapatkan posisi karakter dalam suatu string, [, pos_mulai] optional jika digunakan merupakan posisi awal pencarian. INSTR ('CONTOH','O') 2 INSTR ('CONTOH','O',3) 5

16 FUNGSI YANG SERING DIGUNAKAN DALAM ORACLE 3. Fungsi Tanggal
Merubah format tanggal dalam satu sesi : alter session set nls_date_format = ‘dd-mm-yyyy’ Fungsi Keterangan Contoh Hasil ADD_MONTHS (date,n) Memberikan selisih nilai date2 dan date1 dalam hitungan bulan (dapat bernilai pecahan). ADD_MONTHS (' ',3) LAST_DAY (date) Memberikan tanggal dari hari terakhir dalam bulan yang sama dengan ‘date’. LAST_DAY (' ') SYSDATE Mengembalikan tanggal dan waktu saat statement dieksekusi 9/13/2014 3:16:33 PM SYSTIMESTAMP Mengembalikan tanggal sistem, termasuk nilai mili detiknya dan time zone 9/13/2014 3:16: PM +07:00 MONTHS_BETWEEN(date2, date1) MONTHS_BETWEEN(' ',' ') -3 MONTHS_BETWEEN(' ',' ') 3

17 FUNGSI YANG SERING DIGUNAKAN DALAM ORACLE 3. Fungsi Konversi
Keterangan Contoh Hasil TO_CHAR (x [,format]) Konversi menjadi menjadi data bertipe string TO_CHAR(sysdate) TO_CHAR(sysdate,'yyyy-mm-dd') TO_DATE (s [,format]) Melakukan konversi string dengan format yang diberikan ke dalam nilai tanggal. TO_DATE(' ') 9/14/2014 TO_DATE(' ','yyyy-mm-dd') NVL(null,x) Mengganti nilai yang tidak diketahui dengan nilai tertentu sesuai format yang di inginkan. NVL(null,1) 1 NVL(null,sysdate)

18 FUNGSI YANG SERING DIGUNAKAN DALAM ORACLE 4. Fungsi Agregat
Fungsi agregat adalah fungsi yang digunakan untuk melakukan perhitungan statistical dalam table. Biasanya pada saat menyeleksi data, sering di minta untuk menampilkan sekumpulan data berdasarkan kelompok data tertentu yang biasanya mengeksekusinya dengan memberikan perintah group by

19 FUNGSI YANG SERING DIGUNAKAN DALAM ORACLE 4. Fungsi Agregat ……
FUNGSI YANG SERING DIGUNAKAN DALAM ORACLE 4. Fungsi Agregat …….lanjutan Fungsi Keterangan Contoh Hasil MAX (nama_field) mencari nilai maksimal /terbesar dari sekumpulan data yang ada select max(tgl_lhr) from biodata_wni tgl_lhr terbaru dalam biodata_wni MIN (nama_field) mencari nilai minimal /terkecil dari sekumpulan data yang ada select min(tgl_lhr) from biodata_wni tgl_lhr terlama dalam biodata_wni COUNT (nama_field) mencari banyaknya data dari sekumpulan data yang ada select count(nik) from biodata_wni Jumlah data dalam tabel biodata_wni select no_kec, count(nik) as jml from biodata_wni group by no_kec order by no_kec Jumlah data dalam tabel biodata_wni per kecamatan, urut berdasarkan no_kec AVG (nama_field) mencari rata-rata dari sekumpulan data yang ada select avg(floor(months_between(sysdate,tgl_lhr)/12)) as umur_rata2 from biodata_wni rata-rata umur SUM (nama_field) mencari jumlah dari sekumpulan data yang ada select sum(decode(tgl_entri,null,1,0)) from biodata_wni jumlah tgl_entri null dalam biodata_wni

20 FUNGSI YANG SERING DIGUNAKAN DALAM ORACLE 5. Fungsi Logika
A. DECODE (nama_field,n1,n_baru1,n2,n_baru2,….) Fungsi DECODE pada SQL Oracle memiliki algoritma yang sama dengan proses IF THEN ELSE. Jadi dapat dikatakan bahwa fungsi ini digunakan untuk memberikan nilai penganti Contoh : select nama_lgkp,jenis_klmin, decode(jenis_klmin,1,'Laki-laki,2,'Perempuan') as deskripsi from biodata_wni

21 FUNGSI YANG SERING DIGUNAKAN DALAM ORACLE 5. Fungsi Logika…… lanjutan
B. Case when x=y then a else b end Hampir sama dengan DECODE, tapi dengan logika case bisa digunakan untuk lebih dari satu kondisi yang berbeda. Contoh : select nama_lgkp,jenis_klmin,stat_kwn, Case when jenis_klmin=1 and stat_kwn>2 then ‘duda’ when jenis_klmin=2 and stat_kwn>2 then ‘janda’ when stat_kwn=2 then ‘menikah’ Else ‘jomblo’ End as setatus from biodata_wni

22 SQL JOIN (Penggabungan)

23 INNER JOIN Ini adalah query yang paling sederhana, paling umum, dan paling mudah dipahami. Query ini akan mengembalikan semua record dalam tabel kiri (tabel A) yang memiliki record yang cocok di tabel kanan (tabel B). Contoh : Select a.NIK, a.NAMA_LGKP, b.ALAMAT, b.no_rt, b.no_rw From biodata_wni a Inner join data_keluarga b on b.no_kk=a.no_kk

24 LEFT JOIN Query ini akan mengembalikan semua record dalam tabel kiri (tabel A) meskipun record di tabel A tersebut tidak memiliki record yang bersesuaian di tabel kanan (tabel B). Contoh : Select a.NIK, a.NAMA_LGKP, b.ALAMAT, b.no_rt, b.no_rw From biodata_wni a Left join data_keluarga b on b.no_kk=a.no_kk

25 RIGHT JOIN Query ini akan mengembalikan semua record dalam tabel kanan (tabel B) meskipun record di tabel B tersebut tidak memiliki record yang bersesuaian di tabel kiri (tabel A). Semua record yang bersesuaian dari tabel kanan akan muncul. Contoh : Select a.NIK, a.NAMA_LGKP, b.ALAMAT, b.no_rt, b.no_rw From biodata_wni a Right join data_keluarga b on b.no_kk=a.no_kk

26 FULL JOIN Query ini akan mengembalikan semua record yang ada di kedua table tersebut, dan semua record yang bersesuaian akan digabungkan menjadi satu record. Contoh : Select a.NIK, a.NAMA_LGKP, b.ALAMAT, b.no_rt, b.no_rw From biodata_wni a Full join data_keluarga b on b.no_kk=a.no_kk

27 LEFT EXCLUDING JOIN Query ini akan mengembalikan semua record dalam tabel kiri (tabel A) yang tidak memiliki record yang bersesuaian di tabel kanan (tabel B). Biasanya pertanyaan yang dapat diselesaikan menggunakan Left Excluding Join adalah "Tampilkan semua data di tabel A yang tidak ada datanya di tabel B". Contoh : Select a.NIK, a.NAMA_LGKP, b.ALAMAT, b.no_rt, b.no_rw From biodata_wni a Left join data_keluarga b on b.no_kk=a.no_kk Where b.no_kk is null

28 RIGHT EXCLUDING JOIN Query ini akan mengembalikan semua record dalam tabel kanan (tabel B) yang tidak memiliki record yang bersesuaian di tabel kiri (tabel A). Biasanya pertanyaan yang dapat diselesaikan menggunakan Left Excluding Join adalah "Tampilkan semua data di tabel B yang tidak ada datanya di tabel A". Contoh : Select a.NIK, a.NAMA_LGKP, b.ALAMAT, b.no_rt, b.no_rw From biodata_wni a Right join data_keluarga b on b.no_kk=a.no_kk Where a.no_kk is null

29 FULL EXCLUDING JOIN Query ini akan mengembalikan semua record yang tidak memiliki pasangan di tabel kiri (tabel A) maupun tabel kanan (tabel B). Kasus ini jarang sekali ditemukan namun bukan berarti tidak ada. Contoh : Select a.NIK, a.NAMA_LGKP, b.ALAMAT, b.no_rt, b.no_rw From biodata_wni a Full join data_keluarga b on b.no_kk=a.no_kk Where a.no_kk is null or b.no_kk is null

30 VIEW View adalah salah satu object database, yang secara logika merepresentasikan sub himpunan dari data yang berasal dari satu atau lebih tabel. Perintah membuat VIEW : CREATE VIEW nama_view As {sql data yang ingin ditampilkan} Perintah memanggil View: Select * from nama_view

31 VIEW……. lanjutan Contoh : CREATE VIEW vw_penduduk As select A.NIK,a.no_kk,a.nama_lgkp, decode(a.jenis_klmin,1,'LAKI-LAKI',2,'PEREMPUAN') as JENIS_KELAMIN, a.tmpt_lhr,a.tgl_lhr,floor(months_between(sysdate,a.tgl_lhr)/12) as umur, b.alamat,b.no_rt,b.no_rw,c.nama_kel,d.nama_kec from biodata_wni a inner join data_keluarga b on b.no_kk=a.no_kk inner join setup_kel c on c.no_prop=a.no_prop and c.no_kab=a.no_kab and c.no_kec=a.no_kec and c.no_kel=a.no_kel inner join setup_kec d on d.no_prop=a.no_prop and d.no_kab=a.no_kab and d.no_kec=a.no_kec Perintah memanggil View: Select * from vw_penduduk


Download ppt "Pengelolaan Database Kependudukan"

Presentasi serupa


Iklan oleh Google