SQL (2) (Structure Query Language)

Slides:



Advertisements
Presentasi serupa
SQL – DML.
Advertisements

SQL.
SQL (Structured Query Language)
SQL (Struktured Query Language)
Praktikum Database Query Tingkat Lanjut Abdul Kadir.
SQL ADVANCEADVANCE. SQL Data Type MySQL Text Type : 9/7/2014By : Suwondo, S.Kom2.
DML Lanjutan Pertemuan Minggu Ke-10.
SQL.
PRAKTIKUM BASIS DATA (4) TEKNIK INFORMATIKA UNIVERSITAS MERCU BUANA
Strctured Query Language
Pertemuan : Basisdata Terapan
Jalankan script sql berikut : sekolah.sql
JOINED TABLE Untuk menampilkan data dari dua atau lebih tabel, maka tabel – tabel tersebut harus dihubungkan terlebih dahulu  JOIN.
DATA AGREGAT MENGGUNAKAN GROUP FUNCTIONS
SQL 2. Database TRANSACTION Tabel yang terlibat : Customer berisi data pelanggan (nama, alamat, dll) OderInfo berisi info pemesanan oleh pelanggan (tgl.
Microsoft SQL Server DDL dan DML dasar
Oleh: Henry Primandari,S.Kom STMIK-MDP Palembang
Data Definition Language dan Data Manipulation Language

SQL (Structured Query Language) Materi Pertemuan
P E R T E M U A N 12 SISTEM BASIS DATA.
Data Types Data Definition Language Referential Constraint SQL Query
SQL-Aggregate dengan Fungsi GROUP, HAVING dan subQuery
BAHASA QUERY TERAPAN OLEH : HARSITI, ST.
SQL (Structured Query Language)
JOIN Perintah Join digunakan untuk menggabungkan 2 atau lebih tabel dengan syarat tabel yang digabungkan memiliki field yang sama.
MANAJEMEN BASIS DATA Pertemuan 8 SUBQUERY.
STRUCTURED QUERY LANGUAGE (SQL)
Data Manipulation Language
PRAKTIKUM BASIS DATA (4) TEKNIK INFORMATIKA UNIVERSITAS MERCU BUANA
Data Manipulation Language Presented by : Herianto.
PTIK-13 PERANCANGAN DATABASE (2) MENGOLAH DATA MENJADI INFORMASI Dosen: Arya Yudhi W.,S.Kom.,M.Kom.
Basis Data Terapan Antonius Wahyu Sudrajat, S. Kom., M.T.I Perintah Drop Sintak Menghapus Tabel Drop Aturan: Harus dimulai dari table yang paling children.
SQL (Structure Query Language) Pertemuan 3 – RESTRICTING AND SORTING DATA sy urf gm ail. co m.
SQL (Structure Query Language)
SQL (Structure Query Language) Pertemuan 5 – Reporting Aggregate Data Using the Group Function sy urf gm ail. co m.
SQL-Pembatas dan Pengurutan Data
Pertemuan ke-sekian Structure Query Language (SQL) Lanjut
SQL (Structure Query Language)
Structure Query Language
Rekayasa Perangkat Lunak Materi 3 (Database)
PEMASARAN BERBASIS WEB
Query.
SQL.
JOIN.
SQL (Structure Query Language)
Query.
Menggunakan Subquery untuk Memecahkan Query Query
Using Subqueries to Solve Queries
SQL -- DML Pertemuan 7.
EXIT KD 3.4 “ Fungsi-Fungsi Agregasi “. MATERI Disusun Oleh :
PEMASARAN BERBASIS WEB
Stucture Query Language
QUERY SQL Modul Query.
ALJABAR RELASIONAL dan QUERY
SQL (Structured Query Language)
Oleh : Henry Primandari,S.Kom (2006) STMIK MDP Palembang
Basis Data KD 3.3 (Penggabungan data)
Structured Query Language (SQL)
SQL Data Manipulation IK203 Sistem Basis Data Pertemuan #12
Perintah Manipulasi Data
Structured Query Language
Structured Query Language (SQL)
Structured Query Language
Data Manipulation Language (DML)
Structure Query Language (II)
Aplikasi Database Dosen : Sarwo, Skom,.Mkom Url :
Structured Query Language (SQL)
KULIAH “PRAKTIKUM BASIS DATA“ TEKNIK INFORMATIKA UNIVERSITAS MERCU BUANA Oleh : AFIYATI S.KOM, MT.
BAHASA BASIS DATA Retreiving Data dan Manipulation Function
Transcript presentasi:

SQL (2) (Structure Query Language) PERTEMUAN 10 SQL (2) (Structure Query Language) Betha Nurina Sari, M.Kom

QUERY SELECT Tanda * (asterik) Dalam perintah select, tanda * digunakan untuk menampilkan data secara keseluruhan (semua field ditampilkan dan urutan field sesuai deskripsi tabel). Contoh : SELECT * FROM MAHASISWA;

QUERY SELECT Kondisi Menggunakan operator logika (=,<,>,<=,>=) Range IN (…), BETWEEN …. AND…. Boolean : AND, OR, NOT IS NULL, IS NOT NULL LIKE : kondisi pada karakter Simbol % untuk mengabaikan semua string/karakter simbol _ untuk mencocokkan karakter

SELECT …… LIKE Menampilkan data Mahasiswa yang nama depannya diawali huruf M. Menampilkan data mahasiswa yang diketahui hanya nama singkat dalam nama lengkapnya. SELECT * FROM MAHASISWA WHERE Nama LIKE ‘M%’ SELECT * FROM MAHASISWA WHERE Nama LIKE ‘%BUDI%’

SELECT …… LIKE Jika menggunakan tipe kolom CHAR, VARCHAR, atau TEXT, maka LIKE bersifat CASE INSENSITIF, artinya huruf besar dan kecil dianggap sama. Namun tipe data binary : BINARY, VARBINARY, atau BLOB, pencarian LIKE bersifat CASE SENSITIF. Contoh : LIKE S% : Kata yang diawali S LIKE S_ : Kata dengan 2 huruf diawali S (Sa,Si,So,dst) LIKE A___: Kata dengan 4 huruf diawali A LIKE %n : Kata yang diakhiri huruf n LIKE %dia% : Kata yang mengandung kata dia (dia, media,kemudian, dst)

OPERASI HIMPUNAN Operasi SQL tersebut yaitu: UNION, INTERSECT dan EXCEPT, yang masing-masing memiliki hubungan erat dengan operasi aljabar relasional ,  dan  . Contoh: Terdapat 2 himpunan data, yaitu semua nasabah yang memiliki tabungan dan pinjaman. SELECT nama_nasabah FROM penabung SELECT nama_nasabah FROM peminjam

UNION (Gabungan) Untuk menemukan semua nasabah yang memiliki pinjaman, rekening atau keduanya pada suatu bank tertentu, querynya sebagai berikut: OperasiUNION tidak seperti pada klausa SELECT, secara otomatis mengeliminasi duplikat record. (SELECT nama_nasabah FROM penabung) UNION (SELECT nama_nasabah FROM peminjam)

UNION (GABUNGAN) Jika ingin mempertahankan adanya duplikasi, maka dapat digunakan operasi UNION ALL sebagai pengganti UNION. (SELECT nama_nasabah FROM penabung) UNION ALL (SELECT nama_nasabah FROM peminjam)

IRISAN Untuk menemukan semua nasabah yang memiliki baik rekening maupun pinjaman pada bank, maka dapat digunakan query berikut: Seperti pada operasi UNION, operasi INTERSECT juga mengeliminasi adanya duplikat data. (SELECT [Distinct] nama_nasabah FROM penabung) INTERSECT (SELECT [Distinct] nama_nasabah FROM peminjam)

INTERSECT (IRISAN) Jika ingin ditampilkan semua data yang memenuhi, sehingga mempertahankan adanya duplikat data pada record-recordnya, maka dapat digunakan operasi INTERSECT ALL . (SELECT [Distinct] nama_nasabah FROM penabung) INTERSECT ALL (SELECT [Distinct] nama_nasabah FROM peminjam)

EXCEPT (PERKECUALIAN) Untuk menemukan semua nasabah yang memiliki rekening tapi tidak memiliki pinjaman pada suatu bank, maka bentuk query: Seperti pada operasi UNION dan INTERSECT sebelumnya, operasi EXCEPT juga mengeliminasi adanya duplikat data. (SELECT [Distinct] nama_nasabah FROM penabung) EXCEPT (SELECT [Distinct] nama_nasabah FROM peminjam)

EXCEPT (PERKECUALIAN) Jika ingin mempertahankan adanya duplikasi data, maka dapat digunakan operasi EXCEPT ALL. (SELECT [Distinct] nama_nasabah FROM penabung) EXCEPT ALL (SELECT [Distinct] nama_nasabah FROM peminjam)

FUNGSI AGREGASI & GROUP BY Sintaks : AVG,SUM, MIN,MAX, COUNT SELECT [column,] agregation_function(column), ... FROM table [WHERE condition] [GROUP BY column] [ORDER BY column];

Fungsi Agregasi Contoh : Menampilkan rata-rata, maksimal, minimal dan jumlah gaji semua karyawan SELECT AVG(salary), MAX(salary), MIN(salary), SUM(salary) FROM employees

FUNGSI AGREGASI Contoh : Menampilkan jumlah karyawan di departemen Computer Science. SELECT COUNT(*) FROM employees WHERE department_name = “Computer Science”;

FUNGSI AGREGASI & GROUP BY Contoh menampilkan departement_id dan rata-rata gaji di setiap departemen SELECT department_id, AVG(salary) FROM employees GROUP BY department_id ;

HAVING Fungsi GROUP BY dapat dibuat pembatasan dengan fungsi HAVING Dengan klausa HAVING dapat membatasi group data: 1. Rows (baris-baris) akan di group. 2. Fungsi group dapat diaplikasikan. 3. Menampikan isi Group yang sesuai dengan klausa HAVING.

HAVING Contoh : Tampilkan gaji terbesar dari tiap departemen dimana gaji terbesarnya lebih dari 10 juta. SELECT department_id, MAX(salary) FROM employees GROUP BY department_id HAVING MAX(salary)>10.000.000 ;

CARTESIAN Kartesian, untuk mendapatkan seluruh kombinasi data dari beberapa tabel Contoh : SELECT * FROM MAHASISWA,MATKUL; SELECT * FROM MAHASISWA M, JADWAL J WHERE M.NPM = J.NPM;

CROSS JOIN SELECT * FROM STUDENT CROSS JOIN ENROLMENT Student ID Name 123 John 124 Mary 125 Mark 126 Jane ID Name ID Code 123 John 123 DBS 124 Mary 123 DBS 125 Mark 123 DBS 126 Jane 123 DBS 123 John 124 PRG 124 Mary 124 PRG 125 Mark 124 PRG 126 Jane 124 PRG 123 John 124 DBS 124 Mary 124 DBS Enrolment ID Code 123 DBS 124 PRG 124 DBS 126 PRG SELECT * FROM A CROSS JOIN B Sama dengan SELECT * FROM A, B

NATURAL JOIN SELECT * FROM STUDENT NATURAL JOIN ENROLMENT Student ID Name 123 John 124 Mary 125 Mark 126 Jane ID Name 123 John 124 Mary 126 Jane Code DBS Enrolment ID Code 123 DBS 124 PRG 124 DBS 126 PRG PRG DBS PRG

INNER JOIN SELECT * FROM STUDENT INNER JOIN ENROLMENT USING (ID) ID Name 123 John 124 Mary 125 Mark 126 Jane ID Name ID Code 123 John 123 DBS 124 Mary 124 PRG 124 Mary 124 DBS 126 Jane 126 PRG Enrolment ID Code 123 DBS 124 PRG 124 DBS 126 PRG SELECT * FROM A INNER JOIN B ON <condition> sama dengan SELECT * FROM A, B WHERE <condition>

INNER JOIN SELECT * FROM Buyer INNER JOIN Property ON Price <= Budget Buyer Name Budget Smith 100,000 Jones 150,000 Green 80,000 Name Budget Address Price Smith 100,000 15 High St 85,000 Jones 150,000 15 High St 85,000 Jones 150,000 12 Queen St 125,000 Property Address Price 15 High St 85,000 12 Queen St 125,000 87 Oak Row 175,000

TUGAS Tugas kelompok (anggota maksimal 5 orang) Tuliskan nama kelompok (nama karakter/ tema bebas per kelas) beserta identitas anggota (npm,nama dan kelas). Kelalaian penulisan bagian ini penalti 5 poin. Misalnya nama kelompok berdasarkan kota, pulau, tokoh Tugas dikumpulkan dengan softcopy (pdf), kirim ke betha.nurina@staff.unsika.ac.id Waktu mengerjakan 1 minggu, paling lambat pekan depan dikumpulkan.

NEXT ERD