LAPORAN PRAKTIKUM
LANGKAH - LANGKAH MENGGUNAKAN
SQL
NAMA : KUSMI NUR ATIKOH
KELAS : SI 12 C
NIM : 12.12.0167
A. Permasalahan
Meskipun prinsip-prinsip yang berlaku universal,
database mungkin berbeda dalam rincian penting (misalnya jenis didukung indeks,
kemampuan untuk menggunakan indeks untuk melacak nilai-nilai NULL, dll), dan
terutama di alat yang disediakan - peran penting tuning pernyataan SQL
memainkan disebut "rencana pelaksanaan", yaitu deskripsi tentang
bagaimana pernyataan tersebut akan dievaluasi (apa tabel akan bergabung,
bagaimana bergabung akan dilakukan dan dalam rangka apa, kondisi apa akan
dievaluasi dengan menggunakan indeks, dll) dan cara untuk membaca dan
menampilkan itu adalah khusus untuk setiap database. PostgreSQL menyediakan
MENJELASKAN [ANALISIS] perintah, Oracle mengisi informasi ke dalam tabel (yang
dapat dibaca akibatnya menggunakan peralatan tradisional - SQLPlus, katak, SQL
Developer, ...) dll .
B. Landasan
Teori
SQL (Structured Query Language) adalah
sebuah bahasa yang dipergunakan untuk mengakses data dalam basis data
relasional. Bahasa ini secara de facto merupakan bahasa standar yang
digunakan dalam manajemen basis data relasional. Saat ini hampir semua server
basis data yang ada mendukung bahasa ini untuk melakukan manajemen datanya.
Secara umum, SQL terdiri dari dua bahasa, yaitu Data
Definition Language (DDL) dan Data Manipulation Language (DML).
Implementasi DDL dan DML berbeda untuk tiap sistem manajemen basis data (SMBD),
namun secara umum implementasi tiap bahasa ini memiliki bentuk standar yang
ditetapkan ANSI. Artikel ini akan menggunakan bentuk paling umum yang dapat
digunakan pada kebanyakan SMBD.
Data Definition Language
DDL digunakan untuk mendefinisikan,
mengubah, serta menghapus basis data dan objek-objek yang diperlukan dalam
basis data, misalnya tabel, view, user, dan sebagainya. Secara umum, DDL yang
digunakan adalah CREATE untuk membuat objek baru, USE untuk menggunakan objek,
ALTER untuk mengubah objek yang sudah ada, dan DROP untuk menghapus objek. DDL
biasanya digunakan oleh administrator basis data dalam pembuatan sebuah
aplikasi basis data.
CREATE digunakan
untuk membuat basis data maupun objek-objek basis data. SQL yang umum digunakan
adalah:
·
CREATE
DATABASE nama_basis_data
·
CREATE
DATABASE membuat sebuah basis data baru.
·
CREATE TABLE
nama_tabel
·
CREATE TABLE
membuat tabel baru pada basis data yang sedang aktif. Secara umum, perintah ini
memiliki bentuk
·
CREATE TABLE
[nama_tabel]
(
nama_field1 tipe_data
[constraints][,
nama_field2 tipe_data,
...]
)
atau
·
CREATE TABLE
[nama_tabel]
(
nama_field1 tipe_data [,
nama_field2 tipe_data,
...]
[CONSTRAINT nama_field constraints]
)
Dengan:
nama_field adalah nama
kolom (field) yang akan dibuat. Beberapa sistem manajemen basis data
mengizinkan penggunaan spasi dan karakter nonhuruf pada nama kolom.
tipe_data tergantung
implementasi sistem manajemen basis data. Misalnya, pada MySQL, tipe data dapat
berupa VARCHAR, TEXT, BLOB, ENUM, dan sebagainya.
constraints adalah
batasan-batasan yang diberikan untuk tiap kolom. Ini juga tergantung
implementasi sistem manajemen basis data, misalnya NOT NULL, UNIQUE, dan
sebagainya. Ini dapat digunakan untuk mendefinisikan kunci primer (primary
key) dan kunci asing (foreign key).
Satu tabel boleh tidak memiliki
kunci primer sama sekali, namun sangat disarankan mendefinisikan paling tidak
satu kolom sebagai kunci primer.
Contoh:
·
CREATE TABLE
user
(
username VARCHAR(30) CONSTRAINT
PRIMARY KEY,
passwd VARCHAR(20) NOT NULL,
tanggal_lahir DATETIME
);
Data Manipulation Language
DML digunakan untuk memanipulasi
data yang ada dalam suatu tabel. Perintah yang umum dilakukan adalah:
·
SELECT untuk
menampilkan data
·
INSERT untuk
menambahkan data baru
·
UPDATE untuk
mengubah data yang sudah ada
·
DELETE untuk
menghapus data
SELECT adalah
perintah yang paling sering digunakan pada SQL, sehingga kadang-kadang istilah query
dirujukkan pada perintah SELECT. SELECT digunakan untuk menampilkan data dari
satu atau lebih tabel, biasanya dalam sebuah basis data yang sama. Secara umum,
perintah SELECT memiliki bentuk lengkap:
·
( QUERY BUDIN ) Cilegon.
SELECT
[nama_tabel|alias.]nama_field1 [AS alias1] [, nama_field2, ...]
FROM
nama_tabel1 [AS alias1] [INNER|LEFT|RIGHT JOIN tabel2 ON kondisi_penghubung]
[,
nama_tabel3 [AS alias3], ...]
[WHERE kondisi]
[ORDER BY
nama_field1 [ASC|DESC][, nama_field2 [ASC|DESC], ...]]
[GROUP BY
nama_field1[, nama_field2, ...]]
[HAVING kondisi_aggregat]
·
Contoh 1: Tampilkan seluruh data.
SELECT * FROM user
·
Contoh 2: Tampilkan pengguna yang tidak pernah
bertransaksi.
SELECT *FROM user
WHERE total_transaksi = 0
·
Contoh 3: Tampilkan username pengguna yang
bertransaksi kurang dari 10 dan nilainya lebih dari 1.000.
SELECT username FROM user
WHERE jml_transakai < 10 AND total_transaksi >
1000
·
Contoh 4: Tampilkan total nominal transaksi yang sudah
terjadi.
SELECT SUM(total_transaksi) AS total_nominal_transaksi
FROM user
·
Contoh 5: Tampilkan seluruh data diurutkan berdasarkan
jumlah transaksi terbesar ke terkecil.
SELECT * FROM user
ORDER BY jml_transaksi DESC
Fungsi
Aggregat
Beberapa
SMBD memiliki fungsi aggregat, yaitu fungsi-fungsi khusus yang melibatkan
sekelompok data (aggregat). Secara umum fungsi aggregat adalah:
SUM untuk
menghitung total nominal data
COUNT untuk
menghitung jumlah kemunculan data
AVG untuk
menghitung rata-rata sekelompok data
MAX dan MIN
untuk mendapatkan nilai maksimum/minimum dari sekelompok data.
Fungsi aggregat digunakan pada
bagian SELECT. Syarat untuk fungsi aggregat diletakkan pada bagian HAVING,
bukan WHERE.