Anda di halaman 1dari 11

PERTEMUAN 4

SQL Data Manipulation Language


Query Single Table

Kemampuan Akhir Yang Diharapkan :

1. Mampu melakukan analisa dan menggunakannya dalam sebuah perintah


mengenai perintah SQL SELECT dengan menggunakan klausa WHERE,
ORDER BY untuk melakukan pengurutan, GROUP BY untuk mengelompokkan
hasil query, menggunakan fungsi agregat.

Pendahuluan

Aplikasi berisi SQL yang dilekatkan dan logika proses. Aplikasi melakukan pemrosesan transaksi, dan
menampilkan hasil. Hal ini dilakukan dengan memanggil fungsi-fungsi API (Aplication Program
Interface) yang disediakan oleh manajer pengendali untuk berhubungan dengan sumber data. Manajer
pengendalian menyediakan antar muka ODBC yan gumum, memuat pengendali yang spesifik terhadap
basis data sesuai yang diminta aplikasi, dan memetakan panggilan-panggilan ODBC terhadap fungsifungsi yang disediakan pengendalian yang spesifik terhadap basis data. Pengendalian yan gspesifik
terhadap basis data memproses panggilan-panggilan fungsi ODBC, mengkonversi SQL dan tipe data
sesuai dengan sintaks pada DBMS, dan menformat kode kesalahan DBMS pada bentuk yang standar.
Pengendalian ini juga bertanggung jawab untuk mengirim hasil dan kode kesalahan pada manajer
pengendali. Sumber data terdiri atas DBMS dan perangkat lunak system operasi atau jaringan yang
digunakan untuk berhubungan dengan DBMS yang ada di komputer lain.
SQL juga diteapkan pada Internet atau Intranet untuk mengakses basisi data melalui halaman-halaman
Web, untuk mendukung konsep Web dinamis (data disajikan pada halaman Web tidak lagi bersifat
statis, melaikan akan mengikuti nilai sekarang yang terdapat pada basis data). Berbagai perangkat
lunak, seperti IntraBuilder dan Visual J++, mendukung implementasi hal ini.

Elemen SQL
Elemen dasar SQL mencakup pernyataan, nama, type data, konstanta, ekspresi, dan bawaan.

11

Sistem Basis Data


Indrajani, Skom, MM.

Pusat Pengembangan Bahan Ajar


Universitas Mercu Buana

Pernyataan
Peryataan adalah perintah SQL yang meminta sesuatu tindakan kepada DBMS. SQL memiliki kira-kira 30
pernyataan. Beberapa pernyataan dasar SQL dapat dilihat pada tabel dibawah ini:

Tipe Data

11

Sistem Basis Data


Indrajani, Skom, MM.

Pusat Pengembangan Bahan Ajar


Universitas Mercu Buana

Konstanta
Konstanta menyatakan nilai yang tetap (kabalikan dari konstanta adalah variable). Beberapa contoh
konstanta:

Konstanta numeric : 123, -245, 5.45

Konstanta : Jl. Sukapura 23

Konstanta simbolik (konstanta yang tersedia pada SQL dan mempunyai makna tersendiri):
SYSDATE (tanggal system), USER (nama pengguna yang menjalankan SQL). Konstanta
simbolik seringkali disebut variable system.

Ekspresi
Ekspresi adalah segala sesuatu yang menghasilkan nilai. Ekspresi digunakan untuk menghitung nilai.
Sebagai contoh :
(LABA / MODAL) * 100
merupakan ekspresi untuk membagi isi variable LABA dengan MODAL, dan kemudian dikalikan
dengan 100.
Simbol-simbol yang dapat digunakan pada ekspresi aritmatika dapat dilihat pada table dibawah ini:
Simbol
*
/

11

Sistem Basis Data


Indrajani, Skom, MM.

Keterangan
Perkalian
Pembagian

Pusat Pengembangan Bahan Ajar


Universitas Mercu Buana

+
Penjumlahan
Pengurangan
Table. Symbol pada ekspresi aritmatika
Fungsi Bawaan
Fungsi adalah sebuah subprogram yang menghasilkan suatu nilai jika dipanggil. SQL memiliki
sejumlah fungsi bawaan (fungsi yang disediakan oleh SQL). Sebagai contoh, terdapat fungsi bernama
MIN yang berguna untuk memperoleh nilai terkecil atau AVG untuk memperoleh nilai rata-rata.
Penulisan SQL Command

Upper-case letters represent reserved words.


Lower-case letters represent user-defined words.
| indicates a choice among alternatives.
Curly braces {} indicate a required element.
Square brackets [] indicate an optional element.
indicates optional repetition (0 or more).

SELECT STATEMENT

11

Sistem Basis Data


Indrajani, Skom, MM.

Pusat Pengembangan Bahan Ajar


Universitas Mercu Buana

11

Sistem Basis Data


Indrajani, Skom, MM.

Pusat Pengembangan Bahan Ajar


Universitas Mercu Buana

11

Sistem Basis Data


Indrajani, Skom, MM.

Pusat Pengembangan Bahan Ajar


Universitas Mercu Buana

Find number of staff in each branch and their total salaries.


SELECT branchNo,
COUNT(staffNo) AS count,
SUM(salary) AS sum
FROM Staff
GROUP BY branchNo
ORDER BY branchNo;
SELECT Statement Aggregates

Each operates on a single column of a table and returns a single value.

COUNT, MIN, and MAX apply to numeric and non-numeric fields

SUM and AVG for numeric fields only.

Apart from COUNT(*), each function eliminates nulls first and operates only on remaining
non-null values.

COUNT(*) counts all rows of a table, regardless of whether nulls or duplicate values
occur.

Can use DISTINCT before column name to eliminate duplicates.

DISTINCT has no effect with MIN/MAX, but may have with SUM/AVG

Aggregate functions can be used only in SELECT list and in HAVING clause.

If SELECT list includes an aggregate function and there is no GROUP BY clause,


SELECT list cannot reference a column out with an aggregate function. For example, the
following is illegal:

11

Sistem Basis Data


Indrajani, Skom, MM.

Pusat Pengembangan Bahan Ajar


Universitas Mercu Buana

SELECT staffNo, COUNT(salary)


FROM Staff;

11

Sistem Basis Data


Indrajani, Skom, MM.

Pusat Pengembangan Bahan Ajar


Universitas Mercu Buana

Latihan

Menampilkan record (SELECT 1 tabel)


1.

Menampilkan semua data supplier


SELECT * FROM S
atau
SELECT Sn, Sname, Status, City FROM S

2.

Menampilkan semua nilai Pn pada tabel SP


SELECT Pn FROM SP

3.

Menampilkan nomor supplier dan status untuk supplier yang tinggal di Paris
SELECT Sn, Status FROM S
WHERE City ='Paris'

4.

Menampilkan no.supplier yang tinggal di Paris dengan status > 20


SELECT Sn FROM S
WHERE City ='Paris" AND Status > 20

5.

Menampilkan jumlah pengiriman P1


SELECT COUNT(*) FROM SP
WHERE Pn = 'P1'

6.

Perintah untuk menghindari hasil data yang sama terulang kembali (distinct)
SELECT DISTINCT Pn FROM SP

7.

Menampilkan no.supplier dan status bagi supplier yang tinggal di Paris dalam
urutan status menurun
SELECT Sn,Status FROM S
WHERE City = 'Paris'

11

Sistem Basis Data


Indrajani, Skom, MM.

Pusat Pengembangan Bahan Ajar


Universitas Mercu Buana

ORDER BY Status desc


8.

Menampilkan no.Part dari semua part yang dipasok oleh lebih dari seorang supplier
SELECT Pn FROM SP
GROUP BY Pn
HAVING COUNT(*) > 1

9.

Menampilkan semua part yang nomornya dimulai dengan huruf C


SELECT * FROM P
WHERE Pname LIKE 'C%'

Fungsi Perhitungan
COUNT

: jumlah baris dan kolom

SUM

: jumlah nilai dam kolom

AVG

: rata - rata nilai dalam kolom

MAX

: nilai terbesar dalam kolom

MIN

: nilai terkecil dalam kolom

Untuk SUM dan AVG nilainya harus numerik (INT, SMALLINT, FLOAT). Fungsi-fungsi
tsb jika dikenakan pada nilai yang NULL maka nilainya akan diabaikan kecuali untuk
COUNT(*)
1.

Menghitung jumlah supplier


SELECT COUNT(*) FROM S
atau
SELECT COUNT (Sn) FROM S

2.

Menampilkan nomor part dan total kuantitas pengiriman dari setiap part
SELECT Pn, SUM(QTY) FROM SP
GROUP BY Pn

3.

11

Menghitung jumlah kuantitas dari P2 yang telah disupply

10

Sistem Basis Data


Indrajani, Skom, MM.

Pusat Pengembangan Bahan Ajar


Universitas Mercu Buana

SELECT SUM (QTY) FROM SP WHERE Pn = 'P2'


4.

Menampilkan jumlah pengiriman barang dengan nomor P4 dan dipasok oleh nomor
suppplier S1
SELECT COUNT(*) FROM SP
WHERE Pn = 'P4' AND Sn = 'S1'

5.

Menampilkan nomor part dan total kuantitas dari masing-masing part


SELECT Pn, SUM(QTY) FROM SP
GROUP BY P3

Referensi
Connoly, T., & Begg, c. (2005). database system; a practical approach to design,
implementation and management (4th ed.). Harlow :Addison wesley
Indrajani. (2011). Perancangan Basis Data Dalam All In 1, ISBN 978-979-27-9980-4,
Jakarta: Elex Media Computindo
Indrajani. (2011). Bedah Kilat 1 Jam Pengantar dan Sistem Basis Data, ISBN 978-979-279695-7, Jakarta: Elex Media Computindo
O'Brien, J. (2003). Introduction To Information Systems (11th ed.). New York: Mc Graw Hill

11

11

Sistem Basis Data


Indrajani, Skom, MM.

Pusat Pengembangan Bahan Ajar


Universitas Mercu Buana