13 Juni 2012

RELASI ANTAR 2 TABEL (WHERE)

UNIVERSITAS INDRAPRASTA PGRI
Faklutas FTMIPA
Teknik Informatika
Dosen:  Nahot Frastian, S.kom
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Diberikan sample 3 buah tabel yang saling berelasi satu sama lain beserta sampel datanya.


Tabel Rekening
Id_nasabah
Nomor_rekening
Saldo
Kode_cabang
AA001
001000123
20.000.000
A123
AB002
002000123
5.000.000
B123
CC003
003000123
75.000.000
C123
CD004
004000123
20.000.000
D123
DD005
005000123
1.500.000
E123


Tabel Nasabah
Id_nasabah
Nama_nasabah
Alamat_nasabah
AA001
Rudi
Jl.Sepat
AB002
Yuni
Jl.Baung
CC003
Hani
Jl.Gurame
CD004
Kiki
Jl.Nila
DD005
Lala
Jl.Mujair
Tabel Cabang
Kode_cabang
Nama_cabang
Kota
A123
JKT01
Jakarta Pusat
B123
JKT02
Jakarta Selatan
C123
BDO01
Bandung
D123
SBY01
Surabaya
E123
DPK01
Depok
------------------------------------------------------------------------------------------------------------
Buat Database dengan nama bank, kemudian buat 3 tabel diatas...!

Isikan data sesuai tabel diatas..!
Ø  Create Database:
Syntax: CREATE DATABASE bank;

Ø  Create Table 1: 
Syntax : CREATE TABLE nasabah(Id_nasabah VARCHAR(5), Nama_nasabah VARCHAR(25), Alamat_nasabah VARCHAR(25));


Ø  Insertion
Syntax : INSERT INTO `bank`.`nasabah` (`Id_nasabah` ,`Nama_nasabah`,`Alamat_nasabah` )VALUES ('AA001', 'Rudi', 'Jl. Sepat'), ('AB002', 'Yuni', 'Jl. Baung'), ('CC003', 'Hani', 'Jl. Gurame'), ('CD004', Kiki', 'Jl. Nila'), ('DD005', 'Lala', 'Jl. Mujair');


Ø  Create Table 2
Syntax : CREATE TABLE Rekening(Id_nasabah VARCHAR(5), Nomor_rekening INT(10), Saldo BIGINT(30), Kode_cabang VARCHAR(4));

Ø  Insertion
Syntax : INSERT INTO `bank`.`rekening`(`Id_nasabah` ,`Nomor_rekening` ,`Saldo` ,
`Kode_cabang` )VALUES ('AA001', '001000123', '20000000', 'A123'), ('AB002', '002000123', '5000000', 'B123'), ('CC003', '003000123', '75000000', 'C123'), 'CD004', '004000123', '20000000', 'D123'), ('DD005', '005000123', '1500000', 'E123');

Ø  Create Table 3
Syntax : CREATE TABLE Cabang(Kode_cabang VARCHAR(4), Nama_cabang VARCHAR(5), Kota VARCHAR(25)); 

Ø  Insertion
Syntax : INSERT INTO `bank`.`cabang` (`Kode_cabang` ,`Nama_cabang` ,`Kota`
)VALUES ('A123', 'JKT01', 'Jakarta Pusat'), ('B123', 'JKT02', 'Jakarta Selatan'), ('C123', 'BDO01', 'Bandung'), ('D123', 'SBY01', 'Surabaya'
), ('E123', 'DPK01', 'Depok');





...............................................

Ø  Tampilkan Id_nasabah, Nama_nasabah, dan Saldo…!
-          Tentukan tabel mana saja yang dibutuhkan.
Untuk menampilkan Id_nasabah dan Nama_nasabah kita membutuhkan tabel nasabah.
Sedangkan untuk menampilkan saldo kita membutuhkan tabel rekening. Jadi kita akan menggunakan 2 tabel tersebut.
-          Perhatikan relasi dari tabel tersebut. Tabel nasabah dan rekening dihubungkan oleh atribut Id_nasabah.
-          Buat query SQL.
Syntax: SELECT `nasabah`.`Id_nasabah`,`nasabah`.`Nama_nasabah`,`rekening`.`Saldo`
FROM `nasabah`,`rekening` WHERE `nasabah`.`Id_nasabah` = `rekening`.`Id_nasabah`;

Output:

Ø  Tampilkan Nomor rekening dan nama cabang..!
-          Syntax: SELECT `rekening`.`Nomor_rekening` , `cabang`.`Nama_cabang`
FROM `rekening` , `cabang` WHERE `rekening`.`Kode_cabang` = `cabang`.`Kode_cabang`;
Output:

Ø  Tampilkan Nama_nasabah, Alamat_nasabah, dan Nomor_rekening..!
-          Syntax:
SELECT `nasabah`.`Nama_nasabah` , `nasabah`.`Alamat_nasabah` , `rekening`.`Nomor_rekening` FROM `nasabah` , `rekening`
WHERE `nasabah`.`Id_nasabah` = `rekening`.`Id_nasabah`;

-          Output:

Ø  Tampilkan Nomor_rekening dan Kota..!
Syntax:  SELECT `rekening`.`Nomor_rekening` , `cabang`.`Kota` FROM `rekening` , `cabang` WHERE `rekening`.`Kode_cabang` = `cabang`.`Kode_cabang`;

-          Output:


--------------------------------------------------------------------------------------------------------
Diberikan sampel 3buah tabel yang saling berelasi satu sama lain beserta sampel datanya.
Tabel Mahasiswa
Npm
Nama
Kelas
2009123001
Abigail
4B
2009123002
Reddi
4C
2009123003
Reva
4A
2009123004
Chyntia
4E
2009123005
Steven
4B


Tabel Nilai
Npm
No_mk
Mid
final
2009123001
110011
78
80
2009123002
120011
80
87
2009123003
130011
69
75
2009123004
140011
80
60
2009123005
150011
85
90


Tabel Matakuliah
No_mk
Nama_mk
Sks
110011
Basis data
4
120011
Komunikasi
2
130011
Algoritma
3
140011
Jaringan Komputer
3
150011
Logika Matematika
3


Ø  Buatlah database dengan nama mhs dan tabel diatas..!

Ø  Create database mhs
Syntax: CREATE DATABASE mhs;

Ø  Create tabel Mahasiswa
Syntax : CREATE TABLE mahasiswa(npm INT(12), nama VARCHAR(25), kelas VARCHAR(2));

Ø  Insertion:
Syntax : INSERT INTO `mhs`.`mahasiswa` (`npm` ,`nama` ,`kelas` )VALUES (
'2009123001','Abigail','4B'),('2009123002', 'Reddi', '4C'), ('2009123003', 'Reva', '4A'), ('2009123004', 'Chyntia','4E'), ('2009123005', 'Steven', '4B');

Ø  Create tabel Nilai
Syntax : CREATE TABLE nilai(npm INT(12), no_mk INT(6), mid FLOAT(3), final FLOAT(3));
Output:
Ø  Insertion
Syntax: INSERT INTO `mhs`.`nilai` (`npm` ,`no_mk` ,`mid` ,`final` )
VALUES ('2009123001', '110011', '78', '80'), ('2009123002', '120011', '80', '87'), ('2009123003', '130011', '69', '75'), ('2009123004', '140011', '80', '60'), ('2009123005', '150011', '85', '90');
Output:

Ø  Create table Matakuliah
Syntax : CREATE TABLE matakuliah(no_mk INT(6), nama_mk VARCHAR(25), sks INT(1));
Output:

Ø  Tampilkan npm dan no_mk
Syntax : SELECT `mahasiswa`.`npm` , `nilai`.`no_mk`
FROM `mahasiswa` , `nilai` WHERE `mahasiswa`.`npm` = `nilai`.`npm`;
Output:
Ø  Tampilkan npm, nama dan mid..!
Syntax: SELECT `mahasiswa`.`npm` , `mahasiswa`.`nama` , `nilai`.`mid`
FROM `mahasiswa` , `nilai` WHERE `mahasiswa`.`npm` = `nilai`.`npm`;

Ouput:





Ø  Tampilkan nama mahasiswa yang nilai midnya diatas 80..!
Syntax :  SELECT `mahasiswa`.`nama` , `nilai`.`mid`
FROM `mahasiswa` , `nilai` WHERE `mahasiswa`.`npm` = `nilai`.`npm` AND mid>80;
Ø  Tampilkan nama, kelas yang nila mid dibawah 80 atau nilai final diatas 80..!
Syntax : SELECT `mahasiswa`.`nama` , `mahasiswa`.`kelas` , `nilai`.`mid` , `nilai`.`final`FROM `mahasiswa` , `nilai` WHERE `mahasiswa`.`npm` =` nilai`.`npm` AND mid <80 AND final >80;

Output: tidak ada hasil:




Ø  Tampilkan nama matakuliah yang nilai mid diatas 80..!
Syntax : SELECT `matakuliah`.`nama_mk` , `nilai`.`mid`FROM `matakuliah` , `nilai` WHERE `matakuliah`.`no_mk` = `nilai`.`no_mk` AND mid >80;

Output :













Tidak ada komentar:

Posting Komentar