Skip to main content

Menerapkan penggunaan SQL untuk mengakses multi table

Select multitable

SQL adalah bahasa query baku untuk DBMS.SQL diambil sebagai bagian sejak tahun 1992 awalnya diterapkan pada DBMS besar seperti Oracle dan Informix.

Tabel-tabel yang dibuat pada studi kasus ini cukup sederhana saja untuk memudahkan pemahaman. Adapun tabel-tabel tersebut adalah:
1.mhs (
2.nim varchar(3),
3.namaMhs varchar(30),
4.primary key(nim)
5.)
1.mk (
2.kodeMK varchar(3),
3.namaMK varchar(30),
4.sks integer,
5.primary key(kodeMK)
6.)
1.ambilMK (
2.nim varchar(3),
3.kodeMK varchar(3),
4.nilai integer,
5.primary key(nim, kodeMK)
6.)
Dalam hal ini, field nim dan kodeMK pada tabel ambilMK merupakan foreign key. Apabila diperhatikan, tabel mhs dengan tabel ambilMK saling berelasi karena nim dalam tabel ambilMK berasal dari nim dalam tabel mhs (master tabel).
Demikian pula antara tabel mk dengan ambilMK. Kedua tabel ini juga berelasi karena kodeMK dalam tabel ambilMK berasal dari kodeMK dalam tabel mk.
1.JOIN



Nama
Catatan
INNER JOIN
Hnya menghasilkan baris kombinasi jika kondisi terpenuhi
CROSS JOIN
Sama dengan INNER JOIN (TRUE)
LEFT OUTER JOIN
Baris dari table kiri selalu disertakan, tidak berpengaruh kondisi terpenuhi atau tidak.
RIGHT OUTER JOIN
Baris dari table kanan selalu disertakan, tidak berpengaruh kondisi terpenuhi atau tidak.
SELF JOIN
Hanya istilah untuk JOIN yang menggunakan table yang sama di sisi kanan dan kiri.


join, sub select, union dan intersect




a. INNER JOIN 


Sintak:

select * from namatable1 inner join namatable2 on namatable1.namakolom= namatable2.namakolom;

Contoh:


Tampilkan data air_master kemudian Meal_Code dan Service_Code 


contoh soal inner join dan penyelesaian


b. CROSS JOIN


Sintak:

select * from namatable1 cross join namatable2 on namatable1.namakolom= namatable2.namakolom;

Contoh:


Tampilkan data air_master kemudian Meal_code dan Service_Code


contoh soal cross join dan penyelesaian


c. LEFT OUTER JOIN 



Sintak:

select * from namatable1 left outer join namatable2 on namatable1.namakolom= namatable2.namakolom;

Contoh:


Tampilkan data service(Air_Code) dan Service_Name


contoh soal left join dan penyelesaian


d. RIGHT OUTER JOIN 


Sintak:

select * from namatable1 right outer join namatable2 on namatable1.namakolom= namatable2.namakolom;

Contoh:


Tampilkan data airline_service (Air_Code) dan Service_Name


contoh soal right join dan penyelesaian



e. SELF JOIN 


Sintak:

select * from namatable self join kolom;


2. Sub Select 


Sub select adalah query SELECT yang ada didalam perintah SQL lain (SELECT/UPDATE/INSERT dan lain sebagainya).

Secara umum syntax subquery adalah :

SELECT * FROM tabel_a WHERE kolom_a = (SELECT kolom_b FROM tabel_b);


Contoh:


 Tampilkan Air_Code dan Airlines_Name 


contoh soal sub select dan penyelesaian


 Tampilkan total Air_Code yang paling banyak datanya dan kolom yang ditampilkan adalah Air_Code


contoh soal sub select dan penyelesaian


Operator Exist

pada operator exist semua bentuk kondisi diletakkan didalam subquery, bukan pada query utama.


Secara umum syntax operator ini adalah :

select kolom_a,kolom_b, FROM nama_tabelWHERE EXIST (subselect);


3. UNION



Berfungsi untuk menggabungkan 2 tabel yang berbeda dengan syarat tabel itu harus sama jumlah kolomnya.



Sintak :

SELECT * FROM namatable  WHERE <<kondisi>> UNION SELECT kolom1,kolom2 FROM namatabel;

Jika tabel tersebut mempunyai kolom yang berbeda, maka dapat ditambahkan null atau 1
Penggunaan: ‘ UNION SELECT 1,kolom1,kolom2 FROM namatabel

Contoh:


Tampilkan data airline_meal dan meal berdasarkan Meal_Code yang diawali huruf V


contoh soal union dan penyelesaian



4. 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.


Sintak : 

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.

Comments

Popular posts from this blog

Merancang SQL bertingkat dalam memanipulasi basis data

Perintah select bertingkat Cara Menampilkan Data Dengan Perintah Select Apa sih Select dalam database? Select adalah perintah yang digunakan untuk menampilkan data dari tabel yang ada didatabase dan dapat juga berupa sebuah ekspesi. Seperti awal dibahas bahwa ada beberapa metode yang bisa digunakan namun kembali lagi sesuai kebutuhan, dalam tutorial ini semua akan dibahas masing-masing metode karna kerap kali kebutuhan tersebut ternyata memang paling sering digunakan. Dalam kasus yang sering terjadi adalah jika seorang programmer hanya ingin menampilkan data yang spesifik, caranya adalah dengan menggunakan logika ekspesi, umumnya diawali dengan WHERE lalu kondisi seperti AND, OR, LIKE, BETWEEN, IN, NOT IN, dan lain sebagainya. Berikut ini adalah pseudo-code perintah Select… SELECT field / * FROM nama_tabel WHERE kondisi Perintah diatas hanyalah sebuah pseudo-code dan tidak bisa digunakan, penulis hanya mengasumsikan perintah tersebut agar sampai sini sudah dapat dibayangkan

Mengevaluasi pengamanan sistem basis data pada RDBMS

Mengevaluasi pengamanan sistem basis data pada RDBMS Kompetensi : a. Password akses basis data. b. Enkripsi password. c. Priviladge. d. Pembatasan kewenangan hak akses pengguna basis data RDBMS. e. Penambahan dan penghapusan pengguna basis data. A. Password akses basis data. Keamanan database adalah suatu cara untuk melindungi database dari ancaman, baikdalam bentuk kesengajaan atau pun bukan. Ancaman adalah segala situasi atau kejadian baik secara sengaja maupun tidak yang bersifat merugikan dan mempengaruhi system serta secara konsekuensi terhadap perusahaan/organisasi yang memiliki system database.Keamanan database tidak hanya berkenaan dengan data yang ada pada database saja, tetapi juga meliputi bagian lain dari system database, yang tentunya dapat mempengaruhi database tersebut. Hal ini berarti keamanan database mencakup perangkat keras, perangkat lunak, orang dan data. Agar memiliki suatu keamanan yang efektif dibutuhkan kontrol yang tepat. Seseorang yang mempunyai