Selasa, 07 April 2015

ER-D, DML, DDL, AGGREGATION & GROUPING


1.      DDL atau Data Definition Language adalah kumpulan perintah SQL yang dapat digunakan untuk membuat dan mengubah struktur dan definisi tipe data dari objek-objek database seperti tabel, index, trigger, view, dan lain-lain.
Contoh perintah DML :
·         Penambahan data pada sebuah table
Syntax:
INSERT INTO nama_tabel(field ke-1, ….. field ke-n)
VALUES(nilai_field_ke-1, …. nilai_field_ke-n);
·         Pembaruan data  pada sebuah table
Syntax:
UPDATE nama_tabel
SET nama_field = data_baru
WHERE nama_field = data_lama; 
·         Penghapusan data pada sebuah table
Syntax:
DELETE FROM nama_tabel
[ WHERE kondisi];
·         Pemilihan data dari satu atau beberapa table
Syntax :
SELECT [DISTINCT] select_list
FROM table_source
[WHERE search_condition]
[GROUP BY group_by_expression]
[HAVING search_condition]
[ORDER BY order_expression [ASC | DESC] ]


2.      DML atau Data Manipulation Language adalah kumpulan perintah SQL yang berhubungan dengan pekerjaan mengolah data di dalam table.
Contoh perintah DDL :
·         Membuat table :
CREATE TABLE
Digunakan untuk membuat tabel.
Syntax umumnya sebagai berikut :
CREATE TABLE [schema, ] table
( column datatype [DEFAULT expr][,...]);
·         Menghapus table :
DROP TABLE
Digunakan untuk melakukan penghapusan tabel. Melakukan penghapusan table dengan perintah DROP, berarti mengerjakan hal berikut :
Semua data dan struktur dari table akan dihapus Semua transaksi pending akan di-commit Semua indeks akan dihapus Perintah drop ini tidak bisa di-rollback Sebagai contoh, jika kita ingin menghapus tabel dept, maka yang harus dilakukan adalah :
DROP TABLE dept; 
·         Menambah /menghapus kolom
·         Statemen ALTER TABLE digunakan untuk :
~ Menambahkan kolom baru
Untuk menambah kolom baru, syntax umumnya sebagai berikut :
ALTER TABLE table
ADD         (column datatype [DEFAULT expr]
[, column datatype]...);
~ Memodifikasi kolom yang sudah ada
Kita dapat memodifikasi kolom dengan mengubah tipe datanya, ukuran dan nilai defaultnya.
Sintaks dari perintah ALTER TABLE untuk memodifikasi kolom sebagai berikut:
ALTER TABLE table
MODIFY      (column datatype [DEFAULT expr]
[, column datatype] ... );
Contoh :
ALTER TABLE dept
MODIFY       (dname VARCHAR2(30));
View adalah tabel bayangan. Tidak menyimpan data secara fisik. Biasanya berupa hasil query dari tabel-tabel dalam sebuah database. Syntax untuk melakuakn VIEW adalah :
CREATE VIEW <namaTabel> AS
<SQLQuery>
Trigger adalah sebuah obyek dalam database yang berupa prosedur yang merespon setiap kali terdapat proses modifikasi pada tabel. Proses modifikasi berupa: Insert, Update dan delete. Syntax pembuatan Trigger:
CREATE TRIGGER <namaTrigger> ON TABLE <namaTabel>
FOR [DELETE] [,] [INSERT] [,] [UPDATE]
AS <perintahSQL>

3.      Aggregasi adalah proses untuk mendapatkan nilai dari sekumpulan data yang telah
dikelompokkan. Pengelompokan data didasarkan pada kolom atau kombinasi kolom yang dipilih.
Beberapa fungsi untuk agregasi adalah:
·         MAX : mencari data terbesar dari sekelompok data
·         MIN : mencari data terkecil dari sekelompok data
·         COUNT : mencari cacah data (data NULL tidak akan dimasukkan dalam perhitungan,kecuali disebutkan secara khusus)
·         SUM : mencari jumlah dari sekumpulan data numeris
·         AVG : mencari rerata dari sekumpulan data numeris
Sintaks SQL untuk melakukan pengelompokan adalah:
SELECT [daftar-kolom-non-agregasi,] daftar-kolom-agregasi
FROM daftar-tabel
[WHERE kondisi-record-dalam-tabel]
[GROUP BY daftar-kolom-agregasi]
[HAVING kodisi-filter-hasil-agregasi]
[ORDER BY daftar-kolom-pengurutan]

4.      Grouping
·         GROUP BY
Group By merupakan fungsi yang digunakan untuk melakukan pengelompokan dari perintah SELECT.
Syntax :
SELECT nama_kolom FROM nama_tabel GROUP BY nama_kolom;

·         HAVING
Pemakaian Having terkait dengan group by, kegunaannya adalah untuk menentukan kondisi dari group by, di mana kelompok yang memenuhi kondisi saja yang dihasilkan.
Syntax :
SELECT atribut FROM nama_tabel GROUP BY atribut HAVING fungsi_agregasi;
·         ORDER BY
Order by adalah perintah yang digunakan untuk menampilkan data secara terurut berdasarkan nilai tertentu. Order by dikelompok menjadi 2 jenis yaitu ascending (data diurutkan dari yang terkecil ke terbesar) dan descending(data diurutkan dari yang terbesar ke terkecil).
Syntax :
SELECT *FROM(nama_tabel) ORDER BY atribut ASC/DESC;
·          VIEW
View dapat disebut sebagai sebuah table semu/bayangan. Data-data pada table view dapat merupakan gabungan dari data pada tabe-tabel lain. View dapat digunakan untuk membatasi pengaksesan atas sebuah table tertentu, jadi user hanya boleh melihat table yang berisi data-data secara spesifik. Perintah umum:
Syntax :
CREATE VIEW NAMA_VIEW AS;

5.      ER-D