STRUCTURED QUERY LANGUAGE (SQL) (Implementasi menggunakan MySQL)

dokumen-dokumen yang mirip
Konsep Sistem Informasi B. BAB 2 - SQL Overview

MODUL IV DATA DEFINITION LANGUAGE (DDL)

Database Management System. Program yang memungkinkan item-item dalam suatu database disusun, diolah dan diperbaharui

DAFTAR ISI. DAFTAR ISI... 1 PRAKATA Pengenalan dan Lingkungan Kerja MySQL Tujuan... 4 Dasar Teori... 4 Praktik... 5

FAKULTAS TEKNIK UNIVERSITAS NEGERI YOGYAKARTA LAB SHEET PEMROGRAMAN WEB Semester: 2 MYSQL 200 menit No.: Job: 12 Tgl: Hal.

Pengenalan Structured Query Language

MODUL PEMPROGRAMAN SQL TINGKAT DASAR 1 STANDAR KOMPETENSI: MENERAPKAN BAHASA PEMPROGRAMAN SQL TINGKAT DASAR SMK NEGERI 1 MAJALENGKA

Pertemuan 12 Pengenalan Structured Query Language

Kontrak Kuliah. Dasar-dasar MySQL. Edi Sugiarto, S.Kom, M.Kom

LAPORAN PRAKTIKUM BASIS DATA

Sistem Basis Data Danny Kriestanto, S.Kom., M.Eng

Pengertian Query. Query adalah perintah-perintah untuk mengakses data pada sistem basis data

Structured Query Language

PENGENALAN SINTAKS DASAR DALAM MySQL

SQL (STRUCTURED QUERY LANGUAGE)

PRAKTIKUM SISTEM INFORMASI MANAJEMEN

STRUCTURE QUERY LANGUAGE (SQL)

MODUL 1 Pengenalan MySQL, DDL, DML

Apakah SQL? Membuat basis data dan struktur tabel Input, update, dan delete data dari tabel Membuat query sederhana dan kompleks SQL

MODUL PRAKTIKUM BASIS DATA

By Mrs Imana Malia Kondou, S.T. missimanakondou.wordpress.com

Agenda SQL. Pemakai SQL. Kemampuan SQL 02/12/2010 STRUCTURED QUERY LANGUAGE (SQL) Structured Query Language (SQL) (Pert. 9)

Sejarah(1) Sejarah(2) STRUCTURE QUERY LANGUANGE (1) Definisi SQL

Pemrograman Basis Data Berbasis Web

Tutorial Tipe Data MySQL


RANGKUMAN PHP dan MYSQL

Macam - Macam Perintah Pada SQL

SEKOLAH TINGGI TEKNOLOGI INDONESIA TANJUNG PINANG

BAB V. Basis Data Darmawan Satyananda 74

SQL (Structure Query Language) Gentisya Tri Mardiani, S.Kom

BEKERJA DENGAN MYSQL. 1.2 Instalasi MySQL Instalasi atau pemasangan basis data MySQL berbeda untuk setiap sistem

MODUL 2 PENGENALAN DATA DEFINITION LANGUAGE (DDL) & DATA MANIPULATION LANGUAGE (DML)

SQL. Brigida Arie Minartiningtyas, M.Kom

MODUL V DATA MANIPULATION LANGUAGE (DML) 1

MODUL PRAKTIKUM SISTEM BASIS DATA MENGGUNAKAN MICROSOFT SQL SERVER

Basis Data. DDL & Aturan Referential

Praktikum Basis Data. By. Rita Wiryasaputra, ST., M. Cs.

Database Systems: Lab. Actvity 1: Database Design. Merancang Database. Merancang Database. Tipe Tabel MySQL.

Pertemuan III Oleh: Ilham Rais Arvianto, M.Pd

STRUCTURE QUERY LANGUAGE DDL & DML

SQL MYSQL. Pak Guru Eka 1

KURSUS ONLINE JASA WEBMASTERS

LAPORAN PRAKTIKUM MODUL 1 PENGENALAN MYSQL

Modul 3 : Query Penggabungan Tabel

Data Manipulation Language (DML) & Data Control Language (DCL) pada Database

Apa yang akan dibahas? Pengertian SQL Penggolongan Statement SQL Aturan Gramatika SQL Struktur Dasar SQL Query Satu (1) Tabel

Riyanto

Jobsheet SQL Dasar : Hari Zulianto, ST [Year]

PENGANTAR TEKNOLOGI SISTEM INFORMASI MANAGEMENT 2

JURNAL PRAKTIKUM (LAB. ACTIVITY) PENGOLAHAN BASIS DATA DT022

DATA DEFINITION LANGUAGE

Perangkat Lunak Pengembangan Web

LAPORAN TUGAS BASIS DATA I

TUGAS I PRAKTIKUM SISTEM BASIS DATA. Nama: Krisna Pandu Wibowo( )

Untuk mengakses MySQL dengan mode text dari Console (Command Prompt = Microsoft Windows), dapat dilakukan dengan cara : 1.

MODUL PRAKTIKUM BASIS DATA II

PERANCANGAN FISIK BASIS DATA. Rajif Agung Yunmar, S.Kom., M.Cs.

Untuk menjalankan Mysql secara konpensional jalankan Mysql.exe pada direktori Mysql\Bin. Akan tampak tampilan sebagai berikut:

MODUL PRAKTIKUM BASIS DATA 1. D3 Manajemen Informatika Fakultas Teknik Universitas Trunojoyo

Pemrograman Web Lanjut 2017

Pertemuan 9 Struktur Query Language(SQL)

STRUCTURE QUERY LANGUAGE

Basis Data I. Pertemuan Ke-10 (SQL Part 1) Noor Ifada.

Structured Query Language

S Q L STRUCTURED QUERY LANGUAGE DEFINITION MANIPULATION C O N T R O L D M L SELECT INSERT UPDATE DELETE

Pengenalan Database Management System MySQL. Pokok Bahasan: Pengenalan DataBase Pembangunan database berbasis Client-Server Dasar-Dasar MySQL

Data Manipulation Language (DML)

BAHASA QUERY KOMPLEKS

Komponen-Komponen SQL a. Data Definition Language (DDL) : Digunakan untuk mendefinisikan data dengan menggunakan perintah : create, drop, alter.

MODUL III STRUCTURED QUERY ANGUAGE (SQL)

BAHASA QUERY KOMERSIAL

MODUL 7 STRUCTURED QUERY LANGUAGE

BAHASA QUERY KOMERSIAL

S Q L. Sejarah SQL. Penulisan Perintah SQL. SQL (Structure Query Language)

Praktikum Basis Data 14 Structure Query Language 2

Apa itu DDL & DML? Semua perintah SQL dibagi dalam 2 kategori besar sesuai fungsinya, yaitu :

15-Jan DATABASE - MySQL. Database. Constraints. Tujuan: Memahami perintah-perintah dasar DDL dan DML


SQL DASAR BASIS DATA. Rajif Agung Yunmar, S.Kom., M.Cs.

PRAKTIKUM SISTEM BASISDATA

Structured Query Language

BAB II PEMBUATAN DAN MANAJEMEN TABLE

STRUCTURED QUERY LANGUAGE (SQL)

Operasi Dasar MySQL Menggunakan CLI(Command Line Interface)

TUGAS PRAKTIKUM SISTEM BASIS DATA

Jenis Data, Kolom, Operator dan Fungsi

BAHASA QUERY KOMERSIAL

Statement DDL Create database drop database Create table drop table alter table

TUGAS 1 PRAKTIKUM SISTEM BASIS DATA

Syntax Syntax SQL. Untuk lebih jelasnya dapat dilihat sebagai berikut : 1. DDL (Definition Data Language) a. CREATE

KapitaSelekta. (KBKI82127, 2 sks) Materi : Pengenalan MySQL

TUGAS PRAKTIKUM SISTEM BASIS DATA

Sistem Basis Data 1. Pertemuan 5 dan 6 Aljabar Relasional dan SQL Rogayah, ST.,MMSI Untuk 3DB01 dan 3DB04

Pertemuan 10. Bahasa Query Terapan

DATABASE - MySQL. Muhammad Zen S. Hadi, ST. MSc.

BAB III STRUCTURED QUERY LANGUAGE (SQL)

Program Studi: Manajemen Bisnis Telekomunikasi & Informatika Mata Kuliah: Data Management Oleh: Yudi Priyadi. (Structure of The Database Language)

Berikut ini akan diberikan contoh-contoh penggunaan fungsi agregasi dalam klausa SQL: Contoh 1 Menampilkan banyaknya record dosen select count ( * )

Praktikum Basis Data 2017 TE UM

Transkripsi:

STRUCTURED QUERY LANGUAGE (SQL) (Implementasi menggunakan MySQL) A. Pengenalan SQL SQL pertama kali diterapkan pada sistem R (sebuah proyek riset pada laboratorium riset San Jose, IBM). Kini SQL juga dijumpai pada berbagai platform, dari mikrokomputer hingga mainframe. SQL dapat digunakan baik secara berdiri sendiri maupun dilekatkan pada bahasa-bahasa lain seperti C dan Delphi. SQL juga telah menjadi bagian dari sejumlah DBMS, seperti Oracle, Sybase, MySQL dan Informix. B. Elemen SQL Elemen dasar SQL mencakup pernyataan, nama, tipe data, konstanta, ekspresi, dan fungsi bawaan. 1. Pernyataan Pernyataan adalah perintah SQL yang meminta sesuatu tindakan kepada DBMS. SQL memiliki kira-kira 30 pernyataan. Beberapa pernyataan dasar SQL dapat dilihat pada tabel berikut : Pernyataan Keterangan ALTER Mengubah struktur tabel COMMIT Mengakhiri sebuah eksekusi transaksi CREATE Menciptakan tabel, indeks atau pandangan DELETE Menghapus baris pada tabel DROP Menghapus tabel, indeks atau pandangan GRANT Menugaskan hak terhadap basis data kepada pengguna atau grup pengguna INSERT Menambahkan sebuah baris pada tabel REVOKE Membatalkan hak terhadap basis data ROLLBACK Mengembalikan ke keadaan semula sekiranya suatu transaksi gagal dilaksanakan SELECT Memilih baris dan kolom pada tabel UPDATE Mengubah nilai pada sebuah baris 2. Nama Nama digunakan sebagai identitas bagi objek-objek pada DBMS. Contoh objek pada DBMS adalah tabel, kolom dan pengguna. 3. Tipe Data Setiap data memiliki tipe data. Berikut ini adalah tipe data dalam MySQL : Tipe data untuk numerik : Tipe Keterangan Range Nilai TINYINT Nilai integer yang sangat kecil Signed : -128 s.d. 127 Unsigned : 0 s.d. 255 SMALLINT Nilai integer yang kecil Signed : -32768 s.d. 32767 Unsigned : 0 s.d. 65535 MEDIUMINT Integer dengan nilai medium Signed : -8388608 s.d. 8388607 Unsigned : 0 s.d. 16777215 1

Tipe Keterangan Range Nilai INT Integer dengan nilai standar Signed : -2147483648 s.d. 2147483647 Unsigned : 0 s.d. 4294967295 BIGINT Integer dengan nilai besar Signed : -9223372036854775808 s.d. 9223372036854775807 Unsigned : 0 s.d. 18446744073709551615 FLOAT Bilangan desimal dengan minimum ± 1.175494351e-38 DOUBLE DECIMAL(M,D) single-precission Bilangan desimal dengan double-precission Bilangan float (desimal) yang dinyatakan sebagai string. M adalah jumlah digit yang disimpan dalam suatu kolom, N adalah jumlah digit dibelakang koma maksimum ± 3.402823466e+38 minimum ± 2.2205738585072014e-308 maksimum ± 1.7976931348623457e+308 Tergantung pada nilai M dan D Keterangan : Signed dan Unsigned adalah atribut untuk tipe data numerik - Signed : data yang disimpan dalam suatu kolom dapat berupa data negatif dan positif. - Unsigned : digunakan agar data yang dimasukkan bukan data negatif (>=0). Tipe data float tidak dapat dinyatakan dengan unsigned. Tipe data string : Tipe Keterangan Ukuran Maksimum CHAR(n) String karakter dengan panjang yang tetap, yaitu n 1 M byte VARCHAR(n) String karakter dengan panjang yang tidak tetap, 1 M byte maksimum n. TINYBLOB BLOB (Binary Large Object) yang sangat kecil 2 8-1 byte BLOB BLOB berukuran kecil 2 16-1 byte MEDIUMBLOB BLOB berukuran sedang 2 24-1 byte LONGBLOB BLOB berukuran besar 2 32-1 byte TINYTEXT String teks yang sangat kecil 2 8-1 byte TEXT String teks berukuran kecil 2 16-1 byte MEDIUMTEXT String teks berukuran medium(sedang) 2 24-1 byte LONGTEXT String teks berukuran besar 2 32-1 byte ENUM SET Enumerasi, kolom dapat diisi dengan satu member enumerasi Himpunan, kolom dapat diisi dengan beberapa nilai anggota himpunan 65535 anggota Tipe data tanggal dan jam : Tipe Range Format DATE 1000-01-01 s.d. 9999-12-31 0000-00-00 TIME -832:59:59 s.d. 838:59:59 00:00:00 DATETIME 1000-01-01 00:00:00 s.d. 9999-0000-00-00 00:00:00 12-31 23:59:59 4. Konstanta Konstanta menyatakan nilai yang tetap. 5. Ekspresi 64 anggota himpunan 2

Ekspresi adalah segala sesuatu yang menghasilkan nilai. Ekspresi digunakan untuk menghitung nilai. Contoh : harga*jumlah+2 Simbol-simbol yang dapat digunakan pada ekspresi aritmatika. Simbol Keterangan * Perkalian / Pembagian + Penjumlahan - Pengurangan 6. Aggregate Functions (Fungsi Agregat) Fungsi adalah sebuah subprogram yang menghasilkan suatu nilai jika dipanggil. Fungsi agregat adalah fungsi standar di dalam SQL, suatu fungsi yang digunakan untuk melakukan summary, fungsi statistik standar yang dikenakan pada suatu tabel atau query. a. AVG(ekspresi) Fungsi ini digunakan untuk mencari rata-rata nilai dalam suatu kolom dari suatu tabel atau ekspresi. Ekspresi dalam fungsi AVG umumnya adalah nama kolom. Kolom yang dicari nilai rata-ratanya adalah kolom dengan tipe data numerik. b. COUNT(x) Fungsi ini digunakan untuk menghitung jumlah record (baris) dari suatu kolom dari suatu tabel. X adalah nama kolom yang ingin dicari jumlah barisnya. c. MAX(ekspresi) Fungsi ini digunakan untuk mencari nilai terbesar dari suatu kolom dari suatu tabel. Kolom yang dicari nilai terbesarnya memiliki tipe data numerik. d. MIN(ekspresi) Fungsi ini digunakan untuk mencari nilai terkecil dari suatu kolom dari suatu tabel. Kolom yang dicari nilai terkecilnya memiliki tipe data numerik. e. SUM(ekspresi) Fungsi ini digunakan untuk mendapatkan nilai total dari suatu kolom pada suatu tabel. C. Kelompok Pernyataan SQL Pernyataan SQL dapat dikelompokkan menjadi 3 kelompok, yaitu : DDL, DML dan DCL. 1. DDL (Data Definition Language) DDL merupakan kelompok perintah yang berfungsi untuk mendefinisikan atributatribut basis data, tabel, atribut(kolom), batasan-batasan terhadap suatu atribut, serta hubungan antar tabel. Yang termasuk dalam kelompok DDL ini adalah CREATE, ALTER, dan DROP. a. Membuat Database Syntax : CREATE DATABASE namadatabase; namadatabase tidak boleh mengandung spasi dan tidak boleh memiliki nama yang sama antar database. Berikut ini perintah untuk membuat database dengan nama rental : 3

Syntax tambahan : untuk menampilkan daftar nama database yang ada pada mysql menggunakan perintah : SHOW DATABASES; seperti berikut ini : b. Menghapus Database Syntax : DROP DATABASE namadatabase; Database yang akan dihapus sesuai dengan namadatabase. Berikut ini perintah untuk menghapus database dengan nama rental : c. Membuat Tabel Sebelum membuat suatu tabel, terlebih dahulu harus memilih salah satu database sebagai database aktif yang akan digunakan untuk menyimpan tabel-tabel dengan menggunakan syntax : USE namadatabase; Berikut ini perintah untuk menggunakan database dengan nama rental : Syntax membuat table : CREATE TABLE namatabel2 ( Field1 TipeData1, Field2 TipeData2 ); namatabel tidak boleh mengandung spasi (space). Field1 dan TipeData1 merupakan nama kolom pertama dan tipe data untuk kolom pertama. Jika ingin membuat tabel dengan kolom lebih dari satu, maka setelah pendefinisian tipe data sebelumnya diberikan tanda koma (,). Berikut ini perintah untuk membuat tabel dengan nama jenisfilm : Syntax tambahan : Untuk menampilkan daftar nama tabel yang ada pada database yang sedang aktif/digunakan (dalam hal ini database rental) : SHOW TABLES; seperti berikut ini : 4

Untuk menampilkan deskripsi tabel (dalam hal ini jenisfilm) syntaxnya adalah : DESC namatabel; d. Menghapus Tabel Syntax : DROP TABLE namatabel; Tabel yang akan dihapus sesuai dengan namatabel, berikut ini perintah untuk menghapus tabel dengan nama jenisfilm : e. Mendefinisikan null/not null Syntax : CREATE TABLE namatabel ( Field1 TipeData1 NOT NULL, Field2 TipeData2 ); f. Mendefinisikan Nilai Default Nilai default adalah nilai yang otomatis diberikan oleh sistem untuk suatu kolom ketika ada penambahan baris baru, sementara nilai pada kolom tersebut tidak diisi oleh pengguna. Syntax : CREATE TABLE namatabel ( Field1 TipeData1, Field2 TipeData2 DEFAULT nilai ); nilai adalah nilai default dari kolom tersebut. g. Mendefinisikan Primary Key Pada Tabel Terdapat tiga cara untuk mendefinisikan primary key. Berikut ini adalah Syntax mendefinisikan primary key untuk Field1 CREATE TABLE namatabel ( Field1 TipeData1 NOT NULL PRIMARY KEY, Field2 TipeData2 ); 5

Atau CREATE TABLE namatabel ( Field1 TipeData1, Field2 TipeData2, PRIMARY KEY(Field1) ); atau ALTER TABLE namatabel ADD CONSTRAINT namaconstraint PRIMARY KEY (namakolom); Berikut ini perintah untuk membuat tabel jenisfilm dengan kolom jenis tipe datanya char(6), harga tipe datanya int dengan mendefinisikan nilai not null dan primary key untuk kolom jenis serta nilai default untuk kolom harga : atau atau h. Menghapus Primary Key Pada Tabel Perintah : Cara 1 : Jika primary key dibuat dengan menggunakan alter table : ALTER TABLE namatabel DROP CONSTRAINT namaconstraint; Cara 2 : Jika primary key dibuat melalui create table : ALTER TABLE namatabel DROP PRIMARY KEY; Berikut ini perintah yang digunakan untuk menghapus primary key pada tabel jenisfilm : i. Menambah Kolom Baru Pada Tabel Syntax : ALTER TABLE namatabel ADD fieldbaru tipe; 6

namatabel adalah nama tabel yang akan ditambah fieldnya. Fieldbaru adalah nama kolom yang akan ditambahkan, tipe adalah tipe data dari kolom yang akan ditambahkan. Berikut ini perintah untuk menambah kolom keterangan dengan tipe data varchar(25) : j. Mengubah Tipe Data atau Lebar Kolom Pada Tabel Perintah : ALTER TABLE namatabel MODIFY COLUMN field tipe namatabel adalah nama tabel yang akan diubah tipe data atau lebar kolomnya. Field adalah kolom yang akan diubah tipe data atau lebarnya. Tipe adalah tipe data baru atau tipe data lama dengan lebar kolom yang berbeda. Berikut ini perintah untuk mengubah tipe data untuk kolom keterangan dengan char(20) : k. Mengubah Nama Kolom Syntax : ALTER TABLE namatabel CHANGE COLUMN namalamakolom namabarukolom tipedatanya; namatabel adalah nama tabel yang akan diubah nama kolomnya, namalamakolom adalah kolom yang akan diganti namanya, namabarukolom adalah nama baru kolom, tipedatanya adalah tipe data dari kolom tersebut. Berikut ini perintah untuk mengubah nama kolom keterangan menjadi ket : l. Menghapus Kolom Pada Tabel Syntax : ALTER TABLE namatabel DROP COLUMN namakolom; Berikut ini perintah untuk menghapus kolom ket pada tabel jenisfilm : m. Mendefinisikan Foreign Key Pada Tabel Untuk mendefinisikan foreign key, maka harus dipastikan bahwa tabel dan atribut yang dirujuk (tabel induk dari foreign key) sudah didefinisikan terlebih dahulu. Syntax : CREATE TABLE namatabel ( Field1 TipeData1, Field2 TipeData2, FOREIGN KEY (Field2) REFERENCES namatabelinduk 7

(namakolominduk)on UPDATE CASCADE ON DELETE NO ACTION ) atau ALTER TABLE namatabel ADD CONSTRAINT namaconstraint FOREIGN KEY (namakolom) REFERENCES namatabelinduk (namakolominduk) ON UPDATE CASCADE ON DELETE NO ACTION; Berikut ini perintah untuk membuat tabel film beserta kolom-kolomnya : atau n. Menghapus Foreign Key Perintah : ALTER TABLE namatabel DROP FOREIGN KEY namaconstraint; Berikut ini perintah untuk menghapus foreign key pada tabel film : 2. DML (Data Manipulation Language) DML adalah kelompok perintah yang berfungsi untuk memanipulasi data dalam basis data, misalnya untuk pengambilan, penyisipan, pengubahan dan penghapusan data. Perintah yang termasuk dalah kategori DML adalah : INSERT, DELETE, UPDATE dan SELECT. a. INSERT Perintah INSERT digunakan untuk menambahkan baris pada suatu tabel. Terdapat dua cara untuk menambah baris, yaitu : Cara 1 : Menambah baris dengan mengisi data pada setiap kolom : INSERT INTO namatabel VALUES (nilai1,nilai2,nilai-n); Cara 2 : Menambah baris dengan hanya mengisi data pada kolom tertentu : INSERT INTO namatabel (kolom1,kolom2,kolom-n) VALUES (nilai1,nilai2,nilai-n); Berikut ini perintah untuk menambahkan baris pada tabel jenisfilm : Cara 1 : 8

Cara 2 : Keterangan : Jika data bertipe string, date atau time (contoh : action, horor, 2007-11-10) maka pemberian nilainya diapit dengan tanda petik tunggal ( horor ) atau petik ganda ( horor ). Jika data bertipe numerik (2500, 400) maka pemberian nilainya tidak diapit tanda petik tunggal maupun ganda. b. DELETE Perintah DELETE digunakan untuk menghapus satu baris, baris dengan kondisi tertentu atau seluruh baris. Syntax : DELETE FROM namatabel [WHERE kondisi]; Perintah dalam tanda [] bersifat opsional untuk menghapus suatu baris dengan suatu kondisi tertentu. Berikut ini perintah untuk menghapus baris pada tabel jenisfilm dengan data sebagai berikut : Contoh 1 : jika ingin menghapus seluruh baris pada tabel jenisfilm : Contoh 2 : jika ingin menghapus baris yang memiliki nilai 3000 pada kolom harga pada tabel jenisfilm maka perintahnya sebagai berikut : Contoh 3 : jika ingin menghapus baris yang memiliki nilai drama pada kolom jenis pada tabel jenisfilm maka perintahnya sebagai berikut : c. UPDATE Perintah UPDATE digunakan untuk mengubah isi data pada satu atau beberapa kolom pada suatu tabel. Syntax : UPDATE namatabel SET kolom1 = nilai1, kolom2 = nilai2 [WHERE kondisi]; Perintah dalam tanda [] bersifat opsional untuk mengubah suatu baris dengan suatu kondisi tertentu. Berikut ini perintah untuk mengubah baris pada tabel jenisfilm dengan data sebagai berikut : 9

Contoh 1 : mengubah semua nilai pada kolom harga menjadi 2000 : Contoh 2 : mengubah nilai pada kolom harga menjadi 2500 dimana nilai pada kolom jenis adalah action : d. SELECT Perintah SELECT digunakan untuk menampilkan isi dari suatu tabel yang dapat dihubungkan dengan tabel yang lainnya. 1) Menampilkan data untuk semua kolom menggunakan asterisk (*) Syntax : SELECT * FROM namatabel; Berikut ini perintah untuk menampilkan semua data pada tabel jenisfilm : 2) Menampilkan data untuk kolom tertentu Syntax : SELECT kolom1,kolom2,kolom-n FROM namatabel; Berikut ini perintah untuk menampilkan data pada tabel jenisfilm dengan kolom yang ditampilkan adalah kolom jenis : 3) Menampilkan data dengan kondisi data tertentu dengan klausa WHERE Syntax : SELECT * FROM namatabel WHERE kondisi; Berikut ini perintah untuk menampilkan data pada tabel jenisfilm dimana nilai pada kolom jenis adalah drama : 10

Beberapa operator perbandingan yang dapat digunakan pada klausa WHERE selain = adalah : > (lebih dari), < (kurang dari), < > (tidak sama dengan), >= (lebih dari atau sama dengan), <= (kurang dari atau sama dengan). Adapun operator lain, yaitu : AND, OR, NOT, BETWEEN-AND, IN dan LIKE. Berikut ini data yang ada pada tabel jenisfilm : Contoh 1 : perintah untuk menampilkan data pada tabel jenisfilm dimana nilai harga berkisar dari 1000 hingga 3000 : atau Contoh 2 : perintah untuk menampilkan data pada tabel jenisfilm dimana nilai harga sama dengan 1000 atau 3000 : atau Contoh 3 : perintah untuk menampilkan data pada tabel jenisfilm dimana nilai pada kolom jenis tidak sama dengan action : 11

atau Contoh 4 : Isi tabel film perintah untuk menampilkan data pada tabel film dimana data pada kolom tertentu diawali dengan nilai tertentu, misalnya pada kolom judul dimana diawali dengan karakter S : 4) Memberikan nama lain pada kolom Syntax : SELECT namakolomlama AS namakolombaru FROM namatabel; Berikut ini perintah untuk memberikan nama lain pada kolom jenis menjadi jenis_film pada tabel jenisfilm : 5) Menggunakan alias untuk nama tabel Syntax : SELECT nmalias.jenis, nmalias.harga FROM namatabel nmalias; Berikut ini perintah untuk memberikan alias pada tabel jenisfilm : 12

6) Menampilkan data lebih dari dua tabel Syntax : SELECT * from namatabel1,namatabel2,namatabel-n; Isi tabel jenisfilm : Isi tabel film : Berikut ini perintah untuk menampilkan semua data pada tabel jenisfilm dan film : 7) Nested Queries / Subquery (IN, NOT IN, EXISTS, NOT EXISTS) Subquery berarti query di dalam query. Dengan menggunakan subquery, hasil dari query akan menjadi bagian dari query di atasnya. 13

Subquery terletak di dalam klausa WHERE atau HAVING. Pada klausa WHERE, subquery digunakan untuk memilih baris-baris tertentu yang kemudian digunakan oleh query. Sedangkan pada klausa HAVING, subquery digunakan untuk memilih kelompok baris yang kemudian digunakan oleh query. Contoh 1 : perintah untuk menampilkan data pada tabel jenisfilm yang mana data pada kolom jenis-nya tercantum pada tabel film menggunakan IN : atau menggunakan EXISTS Pada contoh di atas : SELECT jenis FROM film disebut subquery, sedangkan : SELECT * FROM jenisfilm berkedudukan sebagai query. Perhatikan, terdapat data jenis dan harga pada tabel jenisfilm yang tidak ditampilkan. Hal ini disebabkan data pada kolom jenis tidak terdapat pada kolom jenis di tabel film. Contoh 2 : perintah untuk menampilkan data pada tabel jenisfilm yang mana data pada kolom jenis-nya tidak tercantum pada tabel film menggunakan NOT IN : atau menggunakan NOT EXISTS 8) Operator comparison ANY dan ALL 14

a. Operator ANY digunakan berkaitan dengan subquery. Operator ini menghasilkan TRUE (benar) jika paling tidak salah satu perbandingan dengan hasil subquery menghasilkan nilai TRUE. Ilustrasinya : Gaji > ANY (S) Jika subquery S menghasilkan G1, G2,..., Gn, maka kondisi di atas identik dengan : (gaji > G1) OR (gaji > G2) OR... OR (gaji > Gn) Contoh : perintah untuk menampilkan semua data jenisfilm yang harganya bukan yang terkecil : b. Operator ALL digunakan untuk melakukan perbandingan dengan subquery. Kondisi dengan ALL menghasilkan nilai TRUE (benar) jika subquery tidak menghasilkan apapun atau jika perbandingan menghasilkan TRUE untuk setiap nilai query terhadap hasil subquery. Contoh : perintah untuk menampilkan data jenisfilm yang harganya paling tinggi : 9) Aggregate Functions (COUNT, SUM, AVG, MIN, MAX) a. COUNT Perintah yang digunakan untuk menghitung jumlah baris suatu kolom pada tabel. Contoh : perintah untuk menghitung jumlah baris kolom jenis pada tabel jenisfilm : b. SUM Perintah yang digunakan untuk menghitung jumlah nilai suatu kolom pada tabel. Contoh : perintah untuk menghitung jumlah nilai kolom harga pada tabel jenisfilm : c. AVG 15

Perintah yang digunakan untuk menghitung rata-rata dari nilai suatu kolom pada tabel. Contoh : perintah untuk menghitung rata-rata dari kolom harga pada tabel jenisfilm : d. MIN Perintah yang digunakan untuk menampilkan nilai terkecil dari suatu kolom pada tabel. Contoh : perintah untuk menampilkan nilai terkecil dari kolom harga pada tabel jenisfilm : e. MAX Perintah yang digunakan untuk menampilkan nilai terbesar dari suatu kolom pada tabel. Contoh : perintah untuk menampilkan nilai terbesar dari kolom harga pada tabel jenisfilm : 10) SQL dengan GROUP BY dan HAVING Klausa GROUP BY digunakan untuk melakukan pengelompokan data. Sebagai contoh, terdapat tabel film dengan data sebagai berikut : akan ditampilkan hanya kolom jenis dan digabungkan dengan SUM(jml_film) yang dikelompokkan berdasarkan kolom jenis pada tabel film : 16

Klausa HAVING digunakan untuk menentukan kondisi bagi klausa GROUP BY. Kelompok yang memenuhi HAVING saja yang akan dihasilkan. Contoh : perintah untuk menampilkan data hanya kolom jenis yang dikelompokkan berdasarkan kolom jenis, dimana jumlah film berdasarkan kelompoknya harus lebih besar dari satu pada tabel film : 11) ORDER BY Klausa ORDER BY digunakan untuk mengurutkan data berdasarkan kolom tertentu sesuai dengan tipe data yang dimiliki. Contoh : perintah untuk mengurutkan data film berdasarkan kolom judul : atau tambahkan ASC untuk pengurutan secara ascending (menaik) atau tambahkan DESC untuk pengurutan secara descending (menurun) 12) UNION, INTERSECT dan EXCEPT a. UNION UNION merupakan operator yang digunakan untuk menggabungkan hasil query, dengan ketentuan jumlah, nama dan tipe kolom dari masingmasing tabel yang akan ditampilkan datanya harus sama. Berikut ini perintah untuk memperoleh data pada tabel film dimana jenisnya action dan horor : 17

Perintah di atas identik dengan : Namun tidak semua penggabungan dapat dilakukan dengan OR, yaitu jika bekerja pada dua tabel atau lebih. b. INTERSECT INTERSECT merupakan operator yang digunakan untuk memperoleh data dari dua buah query dimana data yang ditampilkan adalah yang memenuhi kedua query tersebut dengan ketentuan jumlah, nama dan tipe kolom dari masing-masing tabel yang akan ditampilkan datanya harus sama. Syntax : SELECT * FROM namatabel1 INTERSECT SELECT * FROM namatabel2 Pada MySQL tidak terdapat operator INTERSECT namun sebagai gantinya dapat menggunakan operator IN seperti contoh 1 pada bagian Nested Queries. c. EXCEPT / Set Difference EXCEPT merupakan operator yang digunakan untuk memperoleh data dari dua buah query dimana data yang ditampilkan adalah data yang ada pada hasil query 1 dan tidak terdapat pada data dari hasil query 2 dengan ketentuan jumlah, nama dan tipe kolom dari masing-masing tabel yang akan ditampilkan datanya harus sama. Syntax : SELECT * FROM namatabel1 EXCEPT SELECT * FROM namatabel2 Pada MySQL tidak terdapat operator EXCEPT namun sebagai gantinya dapat menggunakan operator NOT IN seperti contoh 2 pada bagian Nested Queries. 13) Operasi Join Join merupakan operasi yang digunakan untuk menggabungkan dua tabel atau lebih dengan hasil berupa gabungan dari kolom-kolom yang berasal dari tabel-tabel tersebut. Pada join sederhana, tabel-tabel digabungkan dan didasarkan pada pencocokan antara kolom pada tabel yang berbeda. Berikut 18

ini perintah untuk menampilkan kolom judul dari tabel film dan kolom harga dari tabel jenisfilm : Pada contoh di atas, jenisfilm.jenis=film.jenis merupakan kondisi untuk mencocokkan data antara kolom jenis milik tabel jenisfilm dan film. a. Inner Join Inner join digunakan untuk menampilkan data dari dua tabel yang berisi data sesuai dengan syarat dibelakang on (tidak boleh null), dengan kata lain semua data dari tabel kiri mendapat pasangan data dari tabel sebelah kanan. Berikut ini perintah untuk menampilkan data dari tabel jenisfilm dan film dengan syarat berdasarkan kolom jenis : b. Left Join Left join digunakan untuk menampilkan semua data dari tabel sebelah kiri perintah left join beserta pasangannya dari tabel sebelah kanan. Meskipun terdapat data dari sebelah kiri tidak memiliki pasangan, tetap akan ditampilkan dengan pasangannya berupa nilai NULL. c. Right Join Right join digunakan untuk menampilkan semua data dari tabel sebelah kanan perintah right join beserta pasangannya dari tabel sebelah kiri. 19

Meskipun terdapat data dari sebelah kanan tidak memiliki pasangan, tetap akan ditampilkan dengan pasangannya berupa nilai NULL. d. Natural Join Natural join digunakan untuk menampilkan semua data dari dua tabel dimana jika terdapat kolom yang sama, maka yang akan ditampilkan hanya salah satunya saja, yaitu kolom dari tabel sebelah kiri perintah natural join. 1) Natural Left Join Natural left join digunakan untuk menampilkan semua data dari tabel sebelah kiri perintah natural left join beserta pasangannya dari tabel sebelah kanan. Meskipun terdapat data dari sebelah kiri tidak memiliki pasangan, tetap akan ditampilkan dengan pasangannya berupa nilai NULL. 2) Natural Right Join Natural right join digunakan untuk menampilkan semua data dari tabel sebelah kanan perintah natural right join beserta pasangannya dari tabel sebelah kiri. Meskipun terdapat data dari sebelah kanan tidak memiliki pasangan, tetap akan ditampilkan dengan pasangannya berupa nilai NULL. 20

21