Sabtu, 16 Mei 2015

Structured Query Language (SQL)

S
tructured Query Language (SQL) merupakan bahasa yang banyak digunakan dalam berbagai produk database. SQL dibangun di laboratorium IBM-San Jose California sekitar akhir tahun 70-an. Pertama kali dikembangkan sebagai bahasa di produk database DB2 yang sampai saat ini merupakan produk database andalan IBM. SQL sering di lafalkan dengan “sequel”. Dengan menggunakan SQL memungkinkan Anda untuk menambah, mengubah, menghapus, serta mencari data.
Untuk menuntun Anda agar lebih memahami beberapa perintah SQL, maka akan diberikan sebuah tabel yang akan digunakan dalam penjelasan pada pembahasan setiap perintah SQL.
Nama tabel adalah barang dengan struktur dan isi data sebagai berikut :

nama_barang
kode_barang
jml_barang
harga_barang
sampo
12345
10
2000
jeruk
21215
12
3000
snack
12123
25
10000
apel
23235
11
5000
bawang
25253
12
7000
ikan
23226
15
1000
permen
22225
125
200
mangga
11111
250
500
durian
01254
6
5000

Statement SELECT

Perintah SELECT digunakan untuk mencari atau mendapatkan data baik itu secara keseluruhan, atau data dari kolom tertentu,  atau data dengan kondisi tertentu, atau data dari beberapa kolom sekaligus.

Menampilkan Data

Untuk menampilkan atau mengambil data dari database adalah dengan menggunakan perintah atau statement SELECT.
Sintak :
SELECT namaKolom1, namaKolom2 FROM namaTabel
Contoh Penggunaannya :

SELECT * FROM barang
Perintah ini akan mencari dan mendapatkan semua data dari semua kolom yang terdapat pada tabel barang.

nama_barang
kode_barang
jml_barang
harga_barang
sampo
12345
10
2000
jeruk
21215
12
3000
snack
12123
25
10000
apel
23235
11
5000
bawang
25253
12
7000
ikan
23226
15
1000
permen
22225
125
200
mangga
11111
250
500
durian
01254
6
5000

SELECT kode_barang, nama_barang FROM barang
Perintah ini akan mencari dan mendapatkan semua data yang terdapat pada kolom kode_barang dan nama_barang pada tabel barang.



nama_barang
kode_barang
sampo
12345
jeruk
21215
snack
12123
apel
23235
bawang
25253
ikan
23226
permen
22225
mangga
11111
durian
01254

Menyaring Data dengan WHERE

Pada contoh penggunaan statement SELECT dan FORM di atas hanya membatasi jumlah kolom yang ditampilkan saja, sedangkan jumlah baris tidak dibatasi. Untuk membatasi data yang akan diambil berdasarkan kriteria tertentu, maka perintah akan ditambahkan dengan statemant WHERE.
Perintah WHERE digunakan untuk menyaring atau mem-filter data-data yang akan diambil berdasarkan kriteria yang ditentukan. Dengan kata lain data-data yang akan diambil atau ditampilkan hanya yang memenuhi kriteria atau kondisi yang telah ditentukan.
Sintak :
SELECT namaKolom FROM namaTabel WHERE Kondisi
Contoh Penggunaannya :

SELECT nama_barang, jml_barang FROM barang WHERE kode_barang = ‘1235’
Perintah ini akan mencari dan mendapatkan data yang terdapat pada kolom nama_barang dan jml_barang pada tabel barang dengan kondisi dari kode_barang adalah “12345”.

nama_barang
jml_barang
sampo
10

Selain menggunakan operator pembanding misalnya = (sama dengan), <> (tidak sama dengan), < (lebih kecil), > (lebih besar), <= (lebih kecil dan sama dengan), >= (lebih besar dan sama dengan), Anda juga dapat menggunakan perintah Logika misalkan OR (atau) serta AND (dan).

SELECT nama_barang, kode_barang FROM barang WHERE jml_barang = ‘12’ OR harga_barang >= ‘7000’
Perintah ini akan mencari dan mendapatkan data yang terdapat pada kolom nama_barang dan kode_barang pada tabel barang dengan kondisi jml_barang sama dengan ‘12’ atau harga_barang lebih besar atau sama dengan ‘7000’.

nama_barang
kode_barang
jml_barang
harga_barang
jeruk
21215
12
3000
snack
12123
25
10000
bawang
25253
12
7000

SELECT nama_barang, kode_barang FROM barang WHERE jml_barang = ‘12’ AND harga_barang >= ‘7000’
Perintah ini akan mencari dan mendapatkan data yang terdapat pada kolom nama_barang dan kode_barang pada tabel barang dengan kondisi hanya jml_barang sama dengan ‘12’ dan harga_barang lebih besar atau sama dengan ‘7000’.

nama_barang
kode_barang
jml_barang
harga_barang
bawang
25253
12
7000

Hasil perintah OR dan AND akan berbeda karena pada perintah OR akan menampilkan semua data yang memenuhi salah satu dari dua kriteria yang ditentukan yaitu jml_barang = 12 atau harga_barang >= 7000, sedangkan pada perintah AND hanya akan menampilkan data-data yang memenuhi kedua kriteria yang ditentukan yaitu jml_barang = 12 dan harga_barang >= 7000.

Mengurutkan Data dengan ORDER BY

Pada saat Anda menampilkan hasil pencarian data, secara default data-data tersebut akan diurutkan berdasarkan urutan masuknya data ke dalam tabel. Untuk mengurutkan hasil pencarian data berdasarkan urutan abjad maupun angka, Anda dapat menggunakan statement ORDER BY.
Perintah ORDER BY digunakan untuk mengurutkan data-data berdasarkan abjad atau angka pada data yang terdapat pada kolom yang telah ditentukan. Secara default perintah ORDER BY akan mengurutkan dari abjad A sampai dengan Z dan angka 0 sampai dengan 9 (abjad atau angka pertama). Untuk mengurutkan data dari abjad Z sampai dengan A atau angka 9 sampai dengan 0, maka pada akhir perintah ditambahkan dengan statement DESC (Descending).
Sintak :

SELECT namaKolom FROM namaTabel [WHERE Kondisi] ORDER BY namaKolom [DESC]
Contoh Penggunaannya :

SELECT * FROM barang ORDER BY nama_barang
Perintah ini akan menampilkan semua data pada tabel barang dengan mengurutkan data berdasarkan abjad dari A sampai dengan Z pada data yang terdapat di dalam kolom nama_barang.

nama_barang
kode_barang
jml_barang
harga_barang
apel
23235
11
5000
bawang
25253
12
7000
durian
01254
6
5000
ikan
23226
15
1000
jeruk
21215
12
3000
mangga
11111
250
500
permen
22225
125
200
sampo
12345
10
2000
snack
12123
25
10000

SELECT * FROM barang ORDER BY nama_barang DESC
Perintah ini akan menampilkan semua data pada tabel barang dengan mengurutkan data berdasarkan abjad dari Z sampai dengan A pada data yang terdapat di dalam kolom nama_barang.
nama_barang
kode_barang
jml_barang
harga_barang
snack
12123
25
10000
sampo
12345
10
2000
permen
22225
125
200
mangga
11111
250
500
jeruk
21215
12
3000
ikan
23226
15
1000
durian
01254
6
5000
bawang
25253
12
7000
apel
23235
11
5000

Melakukan Perhitungan Matematika

Dengan perintah SELECT selain Anda dapat mengambil data yang diinginkan, Anda juga dapat melakukan perhitungan matematika seperti operator matematika yang terdiri dari penjumlahan (+), pengurangan (-), pembagian (/), dan perkalian (*), serta fungsi matematika lainnya seperti penjumlahan berkelompok (SUM), nilai rata-rata (AVG), nilai maksimum (MAX), dan nilai minimum (MIN).
Syarat utama dalam melakukan perhitungan matematika dengan perintah SQL adalah membuat ALIAS (AS) untuk nama kolom hasil dari perhitungan matematika. Apabila dalam melakukan perhitungan tidak melakukan ALIAS, maka kolom data hasil perhitungan tidak dikenal. Disamping membuat ALIAS, salah satu syarat lainnya adalah data pada kolom yang akan dihitung harus bertipe angka (number).

Oparetor Matematika

Operator matematika adalah perhitungan bilangan yang terdiri dari penjumlahan (+), pengurangan (-), pembagian (/), dan perkalian (*).
Sintaknya :

SELECT [namaKolom], (namaKolom/Angka <operator> namaKolom/Angka) AS kolomAlias FROM namaTabel [WHERE kondisi]
Contoh Penggunaannya :

SELECT nama_barang, (jml_barang + 10) AS tambah FROM barang
Perintah ini akan menjumlahkan data pada kolom jml_barang dengan angka 10 yang terdapat pada tabel barang dengan nama kolom alias adalah tambah kemudian menampilkan kolom nama_barang dan kolom tambah.

nama_barang
tambah
sampo
20
jeruk
22
snack
35
apel
21
bawang
22
ikan
25
permen
135
mangga
260
durian
16

SELECT (jml_barang + 10) AS tambah FROM barang
Perintah ini akan menjumlahkan data pada kolom jml_barang dengan angka 10 yang terdapat pada tabel barang dengan nama kolom alias adalah tambah kemudian menampilkan kolom tambah.

tambah
20
22
35
21
22
25
135
260
16

SELECT nama_barang, (jml_barang + 100) AS tambah, (jml_barang - 10) AS pengurangan, (jml_barang * harga_barang) AS perkalian, (harga_barang / 10) AS pembagian FROM barang
Perintah ini akan menjumlahkan data pada kolom jml_barang dengan angka 100 yang terdapat pada tabel barang dengan nama kolom alias adalah tambah, mengurangkan data pada kolom jml_barang dengan angka 10 dengan nama kolom alias adalah pengurangan, mengalikan data pada kolom jml_barang dengan data pada kolom harga barang dengan nama kolom alias adalah perkalian, membagi data pada kolom harga_barang dengan angka 10 dengan nama kolom alias adalah pembagian, kemudian menampilkan kolom nama_barang, tambah, pengurangan, perkalian, dan pembagian.

nama_barang
tambah
pengurangan
perkalian
pembagian
sampo
110
0
20000
200
jeruk
112
2
36000
300
snack
125
15
250000
1000
apel
111
1
55000
500
bawang
112
2
84000
700
ikan
115
5
15000
100
permen
225
115
25000
20
mangga
350
240
125000
50
durian
106
-4
30000
500

Fungsi Penjumlahan Berkelompok (SUM)

Penjumlahan berkelompok adalah menjumlahkan data-data yang terdapat pada kolom tertentu yang telah dikelompokkan menurut kriteria tertentu. Fungsi SUM ini sangat tepat digunakan apabila Anda ingin menjumlahkan data yang terdapat di dalam satu kolom.
Sintaknya :

SELECT SUM(namaKolom) AS kolomAlias FROM namaTabel [WHERE kondisi]
Contoh penggunaannya :

SELECT SUM(jml_barang) AS total_barang, SUM(harga_barang) AS total_harga FROM barang
Perintah ini akan menjumlahkan semua data yang terdapat pada kolom jml_barang dengan nama kolom alias adalah total_barang, serta menjumlahkan semua data yang terdapat pada harga_barang dengan nama kolom alias dalah total harga.


total_barang
total_harga
466
33700

Fungsi nilai rata-rata (AVG)

Fungsi AVG ini akan menghitung nilai rata-rata dari sekumpulan data yang terdapat pada kolom yang telah ditentukan.
Sintaknya :

SELECT AVG(namaKolom) AS kolomAlias FROM namaTabel [WHERE kondisi]
Contoh penggunaannya :

SELECT AVG(jml_barang) AS rata2_barang, AVG(harga_barang) AS rata2_harga FROM barang
Perintah ini akan menghitung nilai rata-rata dari data yang terdapat pada kolom jml_barang dengan nama kolom alias adalah rata2_barang, serta menghitung nilai rata-rata dari data yang terdapat pada harga_barang dengan nama kolom alias dalah rata2_harga.

rata2_barang
rata2_harga
51,77778
3744,444

Fungsi nilai Maksimal (MAX)

Fungsi MAX ini akan mencari nilai maksimal atau nilai tertinggi dari sekumpulan data yang terdapat pada kolom yang telah ditentukan.
Sintaknya :

SELECT MAX(namaKolom) AS kolomAlias FROM namaTabel [WHERE kondisi]
Contoh penggunaannya :

SELECT MAX(jml_barang) AS maks_barang, MAX(harga_barang) AS maks_harga FROM barang
Perintah ini akan mencari nilai maksimal atau nilai tertinggi dari data yang terdapat pada kolom jml_barang dengan nama kolom alias adalah maks_barang, serta mencari nilai maksimal atau nilai tertinggi dari data yang terdapat pada harga_barang dengan nama kolom alias dalah maks_harga.

maks_barang
maks_harga
250
10000

Fungsi nilai Minimal (MIN)

Fungsi MAX ini akan mencari nilai minimal atau nilai terendah dari sekumpulan data yang terdapat pada kolom yang telah ditentukan.
Sintaknya :

SELECT MIN(namaKolom) AS kolomAlias FROM namaTabel [WHERE kondisi]
Contoh penggunaannya :

SELECT MIN(jml_barang) AS minim_barang, MIN(harga_barang) AS minim_harga FROM barang
Perintah ini akan mencari nilai nilai minimal atau nilai terendah dari data yang terdapat pada kolom jml_barang dengan nama kolom alias adalah minim_barang, serta mencari nilai minimal atau nilai terendah dari data yang terdapat pada harga_barang dengan nama kolom alias dalah minim_harga.

minim_barang
minim_harga
6
200

Statement INSERT

Perintah INSERT digunakan untuk memasukkan atau menyimpan data ke dalam tabel. Dalam penggunaan perintah INSERT yang perlu diperhatikan adalah tipe dari setiap kolom yang akan dimasukkan misalnya sebuah kolom memiliki tipe number maka data yang dimasukkan harus berupa data bertipe number begitu juga dengan kapasitas banyaknya karakter dari kolom tersebut.
Sintaknya :

INSERT INTO namaTabel (namaKolom1, NamaKolom2,.., namaKolomN) VALUES (nilaiKolom1, nilaiKolom2,.., nilaiKolomN)

Contoh Penggunaannya :

INSERT INTO barang (kode_barang, jml_barang, nama_barang) VALUES (‘12345’, ‘10’, ‘Printer’)
Perintah ini akan menyimpan atau menambahkan data ke dalam tabel barang dengan data pada kolom kode_barang adalah “12345”, kolom jml_barang adalah “10”, dan kolom nama_barang  adalah “Printer”.
Apabila Anda ingin memasukkan data ke seluruh kolom yang terdapat dalam sebuah tabel, maka Anda tidak perlu lagi menyebutkan nama-nama kolom tersebut. Data-data yang akan dimasukkan akan tersimpan ke dalam kolom-kolom yang terdapat pada tabel secara berurutan sesuai dengan urutan data yang dimasukkan. Misalnya Anda memiliki sebuah tabel bernama TABEL yang terdiri dari tiga buah kolom dengan nama-nama masing-masing kolom adalah sebagai berikut kolom pertama bernama KOLOM1, kolom kedua bernama KOLOM2, dan kolom ketiga bernama KOLOM3, maka pada saat akan memasukkan data dengan menggunakan perintah  INSERT Anda tidak perlu lagi menyebutkan satu per satu nama kolom-kolom tersebut, ini dapat dilihat pada contoh penggunaan perintah INSERT di bawah ini.

INSERT INTO TABEL VALUES (‘data kolom1’, ‘ini kolom2’, ‘kolom3 ya’)
Perintah di atas akan menyimpan atau menambahkan data pada tabel TABEL dengan data pada KOLOM1 adalah ‘data kolom1’, kolom KOLOM2 adalah ‘ini kolom2’, dan kolom KOLOM3 adalah ‘kolom3 ya’.

Statement UPDATE

Perintah UPDATE digunakan untuk merubah atau mengedit nilai data yang telah tersimpan sebelumnya pada tabel.
Sintaknya :

UPDATE namaTabel SET namaKolom = nilaiBaru [WHERE kondisi]

Contoh Penggunaannya :

UPDATE barang SET jml_barang = ‘12’, nama_barang = ‘Monitor’ WHERE kode_barang = ‘12345’
Perintah ini akan mengubah data pada tabel barang dengan data pada kolom jml_barang menjadi “12” dan nama_barang menjadi “Monitor” dari data yang memiliki nilai pada kolom kode_barang sama dengan “12345”.

Statement DELETE

Perintah DELETE digunakan untuk menghapus data yang terdapat pada tabel.
Sintak :
DELETE FROM namaTabel [WHERE kondisi]

Contoh Penggunaannya :

DELETE FROM barang
Printah ini akan menghapus semua data yang terdapat pada tabel barang.

DELETE FROM barang WHERE kode_barang = ‘12345’
Perintah ini akan menghapus semua data yang terdapat pada tabel barang dengan nilai atau kondisi dari kolom kode_barang sama dengan “12345”.

Statement CREATE

Perintah CREATE digunakan untuk membuat atau mendefinisikan stuktur database, seperti membuat database, tabel, dan index.

Sintaknya :

CREATE TABLE namaTabel (namaKolom1 tipe_data(panjang_data) [konstrain], namaKolom2 tipe_data(panjang_data) [konstrain], ..., namaKolom3 tipeData(panjang_data) [konstrain])

Contoh Penggunaannya :

CREATE TABLE barang (jml_barang NUMBER(10) PRIMARY KEY, kode_barang VARCHAR(35), nama_barang VARCHAR(50))
Perintah ini akan membuat tabel baru dengan nama barang dengan struktur adalah sebagai berikut :
n  Kolom jml_barang dengan tipe data NUMBER, panjang data maksimal adalah 10 karakter dan merupakan PRIMARY KEY.
n  Kolom kode_barang dengan tipe data VARCHAR panjang data maksimal adalah 35 karakter.
n  Kolom nama_barang dengan tipe data VARCHAR panjang data maksimal adalah 50 karakter.

Statement ALTER

Perintah ALTER digunakan memodifikasi struktur database yang telah ada sebelumnya, seperti menambahkan kolom baru, menghapus kolom, atau menambahkan konstrain pada kolom.
Sintak :

ALTER TABLE <nama_tabel> atribut

Atribut untuk menambah kolom adalah ADD <nama_kolom> <tipe_data>(<panjang_data>)
Atribut untuk memodifikasi kolom adalah MODIFY <nama_kolom> <tipe_data>(<panjang_data>)
Contoh Penggunaannya :

ALTER TABLE barang ADD harga_barang NUMBER(15)
Perintah ini akan menambahkan kolom baru pada table barang, kolom baru tersebut adalah harga_barang dengan tipe data adalah NUMBER dengan panjang data maksimal adalah 15 karakter.

ALTER TABLE barang MODIFY harga_barang VARCHAR(25)
Perintah ini akan merubah atau memodifikasi kolom pada table barang, kolom  tersebut adalah harga_barang yang dirubah tipe data menjadi VARCHAR dan panjang data maksimal menjadi 25 karakter.

Statement DROP

Perintah DROP digunakan untuk menghapus database secara keseluruhan.
Sintaknya :

DROP namaTabel

Contoh Penggunaannya :

DROP barang
Perintah ini akan menghapus tabel barang beserta data yang terdapat di dalamnya.


Tidak ada komentar:

Posting Komentar