Anda di halaman 1dari 22

KELOMPOK

Latar belakang
Dalam dunia yang semakin terbuka, tuntutan

terhadap pelayanan yang serba instan dari organisasi apapun terasa semakin kuat. Pelayanan ini dapat terlaksana jika seluruh data yang dibutuhkan tersebut terkumpul, tersusun, dan terorganisir dalam suatu basisdata (database) yang dapat diakses menurut keperluan kapan saja diperlukan.

Tujuan
Memahami operasi-operasi DDL da DML dalam MySQL.
Memahami entitas dalam basis data. Melakukan operasi-operasi retrieve yang spesifik. Memahami keterhubungan entitas didalam basis data. Menyelesaikan kasus-kasus yang melibatkan penggunaan

fungsi-fungsi agregat dan pengelompokan. Memahami operasi subquery dan jenis-jenisnya di dalam pengambilan data. Menyelesaikan kasus-kasus pengambilan data yang kompleks dengan pendekatan subquery.

Dasar Teori
1. SQL (StructuredQuery Language ) SQL adalah sebuah bahasa yang digunakan untuk merequest informasi dari basis data, ada 2 operasi dasar yaitu DDL dan DML. Contoh perintah DDL : CREATE (mendefinisikan), ALTER(memodifikasi), dan DROP( menghapus skema relasi). Contoh perintah DML: INSERT (menambah),UPDATE(memodifikasi), DELETE (menghapus), dan SELECT (mengambil data).

2. Fungsi Agregat adalah fungsi-fungsi yang beroperasi pada sekumpulan baris untuk menghitung dan menghasilkan sebuah nilai tunggal.
3. Subquery (disebut juga subselect atau nested select/query atau inner- select) adalah query SELECT yang ada di dalam perintah SQL lain misalnya SELECT, INSERT, UPDATE, atau DELETE.

4. Pemodelan Data: Model Data Entity-Relationship (E-R) memungkinkan kita menggambarkan konteks objek dan hubungannya, dan digunakan secara luas untuk mengembangkan desain database awal. Model Data tersebut dinamakan juga sebagai Diagram E-R (ERD).

Query
Membuat Databasepti.10.c_kel.4_jurnal

CREATE DATABASE pti.10.c_kel.4_jurnal; Membuat Tabelartikel


CREATE TABLE artikel ( kode_artikel varchar(12), judul longtext, abstrak longtext, halaman varchar(12), PRIMARY KEY (kode_artikel) );

Membuat Tabeldaftar_isi

CREATE TABLE daftar_isi ( id_jurnal varchar(12), kode_artikel varchar(12) );


Membuat Tabeldetail_jurnal

CREATE TABLE detail_jurnal ( id_jurnal varchar(12), volume int(2), nomor int(2), bulan varchar(10), tahun varchar(4), PRIMARY KEY (id_jurnal) );

Membuat Tabeljabatan

CREATE TABLE jabatan ( kode_jabatan varchar(12), nama_jabatan varchar(20) );


Membuat Tabelpengurus

CREATE TABLE pengurus ( kode_pengurus varchar(12), nama_pengurus varchar(12), institusi varchar(12), PRIMARY KEY (kode_pengurus) );

Membuat Tabelpengurus_jurnal CREATE TABLE pengurus_jurnal ( id_jurnal varchar(12), kode_pengurus varchar(12), kode_jabatan varchar(12) ); Membuat Tabelpenulis CREATE TABLE penulis ( kode_penulis varchar(12),

nama_penulis varchar(45), PRIMARY KEY (kode_penulis) );


Membuat Tabelpenulis_artikel

CREATE TABLE penulis_artikel ( kode_artikel varchar(12), kode_penulis varchar(12) );

Menampilkan Data
Menampilkan Detail Jurnal Jika Diketahui Bulan

dan Tahun Pembuatan SELECT volume, nomor, bulan, tahun FROM detail_jurnal WHERE bulan = 'Agustus' AND tahun = '2006';
Menampilkan Detail Jurnal Jika Diketahui Volume

dan Nomor Jurnal SELECT volume, nomor, bulan, tahun FROM detail_jurnal WHERE volume = 7 AND nomor = 1;

Menampilkan Judul Semua Artikel Pada Jurnal

Tertentu Dengan Pengurutan Berdasarkan Judul Secara Ascending SELECT judul as 'Judul Artikel' FROM artikel WHERE kode_artikel IN (SELECT kode_artikel FROM daftar_isi d WHERE d.id_jurnal = (SELECT j.id_jurnal FROM detail_jurnal j WHERE volume = 4 AND nomor = 2)) ORDER BY judul ASC;
Menampilkan Nama Pengurus dan Jabatannya Pada

Suatu Jurnal SELECT p.nama_pengurus AS 'Nama Pengurus', j.nama_jabatan AS 'Jabatan' FROM pengurus p, jabatan j, pengurus_jurnal pj WHERE p.kode_pengurus = pj.kode_pengurus AND j.kode_jabatan = pj.kode_jabatan AND pj.id_jurnal = (SELECT dj.id_jurnal FROM detail_jurnal dj WHERE volume = 7 AND nomor = 1);

Menampilkan Abstrak Dari Suatu Judul Artikel

SELECT abstrak FROM artikel WHERE judul = 'SIMULATOR PENGUJIAN KARAKTERISTIK GENERATOR AC 1 FASA';
Menampilkan Semua Abstrak Pada Suatu Jurnal

SELECT abstrak FROM artikel WHERE kode_artikel IN (SELECT kode_artikel FROM daftar_isi WHERE id_jurnal = (SELECT id_jurnal FROM detail_jurnal WHERE volume = 7 AND nomor = 1));

Menampilkan Penulis Artikel Dari Judul Artikel

SELECT nama_penulis AS 'Penulis Artikel' FROM penulis WHERE kode_penulis = (SELECT kode_penulis FROM penulis_artikel WHERE kode_artikel = (SELECT kode_artikel FROM artikel WHERE judul = 'PENERAPAN METODE PEMETAAN SCHWARZ CHRISTOFFEL DALAM PENENTUAN INDUKTANSI BOCOR ALUR MESIN TAK SEREMPAK'));
Menampilkan Detail Jurnal dan Lokasi Halaman Artikel

Dari Judul Artikel SELECT DISTINCT dj.volume AS 'Volume', dj.nomor AS 'Nomor', dj.bulan AS 'Bulan', dj.tahun, a.halaman AS 'Halaman' FROM detail_jurnal dj, artikel a WHERE dj.id_jurnal IN (SELECT di.id_jurnal FROM daftar_isi di WHERE di.kode_artikel IN (SELECT sa.kode_artikel FROM artikel sa WHERE judul = 'SIMULATOR PENGUJIAN KARAKTERISTIK GENERATOR AC 1 FASA')) AND a.judul = 'SIMULATOR PENGUJIAN KARAKTERISTIK GENERATOR AC 1 FASA';

Menampilkan Detail Jurnal Yang Mengandung

Artikel Tertentu SELECT dj.volume, dj.nomor, dj.bulan, dj.tahun FROM detail_jurnal dj WHERE dj.id_jurnal = (SELECT di.id_jurnal FROM daftar_isi di WHERE di.kode_artikel = (SELECT a.kode_artikel FROM artikel a WHERE a.judul LIKE '%Sistem Monitoring Informasi%')); Menampilkan Pengurus Jurnal Yang Berasal Dari Universitas Negeri Malang SELECT nama_pengurus AS 'Nama Pengurus' FROM pengurus WHERE institusi = 'Universitas Negeri Malang';

Menampilkan Pengurus Jurnal Yang Tidak Berasal

Dari Universitas Negeri Malang SELECT nama_pengurus AS 'Nama Pengurus', institusi AS 'Institusi' FROM pengurus WHERE institusi != 'Universitas Negeri Malang'; Menampilkan Jabatan Dari Anggota Tertentu SELECT p.nama_pengurus AS 'Nama Pengurus', j.nama_jabatan AS 'Jabatan' FROM jabatan j, pengurus p WHERE j.kode_jabatan IN (SELECT pj.kode_jabatan FROM pengurus_jurnal pj WHERE pj.kode_pengurus IN (SELECT sp.kode_pengurus FROM pengurus sp WHERE sp.nama_pengurus = 'Mohammad Nuh')) AND p.nama_pengurus = 'Mohammad Nuh';

Menampilkan Artikel Yang Ditulis Oleh Penulis

Tertentu SELECT a.judul FROM artikel a WHERE a.kode_artikel IN (SELECT pa.kode_artikel FROM penulis_artikel pa WHERE pa.kode_penulis IN (SELECT p.kode_penulis FROM penulis p WHERE p.nama_penulis = 'FX. Budi Rahardjo')); Menampilkan Jumlah Pengurus Dari Jabatan Tertentu Pada Suatu Jurnal SELECT j.nama_jabatan AS 'Nama Jabatan', COUNT(pj.kode_jabatan) AS Jumlah FROM jabatan j, pengurus_jurnal pj WHERE pj.kode_jabatan = j.kode_jabatan AND pj.id_jurnal = (SELECT id_jurnal FROM detail_jurnal WHERE volume = 5 AND nomor = 1) GROUP BY j.kode_jabatan;

Menampilkan Judul Artikel Yang Ditulis Pada Tahun

Tertentu SELECT judul as 'Judul Artikel' FROM artikel WHERE kode_artikel IN (SELECT kode_artikel FROM daftar_isi d WHERE d.id_jurnal IN (SELECT j.id_jurnal FROM detail_jurnal j WHERE j.tahun = 2006));

Menampilkan Pengurus Jurnal Dari Jabatan Tertentu

Pada Suatu Jurnal SELECT p.nama_pengurus AS 'Nama Pengurus' FROM pengurus p WHERE p.kode_pengurus IN (SELECT pj.kode_pengurus FROM pengurus_jurnal pj WHERE pj.id_jurnal = (SELECT dj.id_jurnal FROM detail_jurnal dj WHERE volume = 7 AND nomor = 1) AND pj.kode_jabatan = (SELECT j.kode_jabatan FROM jabatan j WHERE nama_jabatan = 'Penyunting Ahli'));

Menampilkan Semua Penulis Artikel Pada Jurnal

Tertentu SELECT p.nama_penulis FROM penulis p WHERE p.kode_penulis IN (SELECT pa.kode_penulis FROM penulis_artikel pa WHERE pa.kode_artikel IN (SELECT di.kode_artikel FROM daftar_isi di WHERE di.id_jurnal = (SELECT dj.id_jurnal FROM detail_jurnal dj WHERE volume = 5 AND nomor = 1))); Menampilkan Artikel Yang Mengandung Kata Tertentu SELECT judul FROM artikel WHERE abstrak LIKE '%penelitian%';

Menampilkan Nama Penulis Yang Pernah Menulis

Lebih Atau Sama Dengan 3 Kali SELECT p.nama_penulis FROM penulis p WHERE p.kode_penulis IN (SELECT pa.kode_penulis FROM penulis_artikel pa GROUP BY kode_penulis HAVING COUNT(pa.kode_penulis) >= 3); Menampilkan Penulis Yang Tidak Menulis Artikel Pada Jurnal Tertentu SELECT p.nama_penulis FROM penulis p WHERE p.kode_penulis NOT IN (SELECT pa.kode_penulis FROM penulis_artikel pa WHERE pa.kode_artikel IN (SELECT di.kode_artikel FROM daftar_isi di WHERE di.id_jurnal = (SELECT dj.id_jurnal FROM detail_jurnal dj WHERE volume = 6 AND nomor = 2)));

Kesimpulan
Jadi dalam penciptaan suatu database kita harus memerhatikan beberapa hal agar database yang dibuat dapat: Kecepatan dan Kemudahan Kebersamaan Keamanan Kelengkapan Ketersediaan Keakuratan Efisiensi Ruang Penyimpanan

TERIMA KASIH

Anda mungkin juga menyukai