UJIAN TENGAH SEMESTER GANJIL TAHUN 2019/2020
Nama : Abdi Sinaga
Nim : 1119101817
KETENTUAN TUGAS
1. Soal
terdiri dari 5 point soal.
2. Soal
dikumpulkan melalui elearning dalam bentuk file yang formatnya sudah dishare
sebelumnya. (skor: 5%)
3. Selain
mengumpulkan file juga harus memposting hasil pengerjaan di blog masing-masing
dan file hasil pengerjaan dikopikan pada kolom komentar pada postingan.(skor
5%)
Batas waktupengerjaanadalahrabu 30 oktober 2019
jam 23:55 melaluiakunmasing-masing.
INDIKATOR PENILAIAN
1. Masing-masing soal memiliki
bobot penilaian masing-masing soal no.1 (skor maksimal 15%), Soal no.2 (skor
maksimal 10%), Soal no.3 (skor maksimal 25%), Soal no.4 (skor maksimal
20%),Soal no.5 (skor maksimal 20%), kirim file di elearning (skor: 5%), kirim
komentar (skor: 5%)
2.
Total
nilaiakandikonversimenjadinilaihurufdenganketentuansebagaiberikut
|
NILAI
|
INDIKATOR PENILAIAN
|
|
A
|
Total point antara 81-100
|
|
AB
|
Total point antara 71-80
|
|
B
|
Total point antara 61-70
|
|
BC
|
Total point antara 51-60
|
|
C
|
Total point antara 41-50
|
|
CD
|
Total point antara 31-40
|
|
D
|
Total point antara 21-30
|
|
DE
|
Total point antara 11-20
|
|
E
|
Total point antara 1-10
|
Tabelpelanggan
|
no
|
Nama Field
|
Type data
|
Keterangan
|
|
1.
|
idPelanggan
|
Int
|
Pk, auto_increment
|
|
2.
|
namaPelanggan
|
Varchar(25)
|
|
|
idPelanggan
|
namaPelanggan
|
|
1.
|
Cristiano Ronaldo
|
|
2.
|
Lionel Messi
|
|
3.
|
Frank Lampard
|
|
4.
|
Rumelu Lukaku
|
|
5.
|
Zlatan Ibrahimovic
|
|
6.
|
Neymar Jr
|
|
7.
|
Paul Pogba
|
|
8.
|
Muhammad Salah
|
|
9.
|
Mesut Ozil
|
|
10.
|
Luiz Suares
|
Tabelperangkat
|
no
|
Nama Field
|
Type data
|
Keterangan
|
|
1.
|
idPerangkat
|
Int
|
Pk, auto_increment
|
|
2.
|
namaPerangkat
|
Varchar(20)
|
|
|
3.
|
Keterangan
|
Text
|
|
|
4.
|
idBilik
|
Int
|
FK
|
|
idPerangkat
|
namaPerangkat
|
Keterangan
|
Idbilik
|
|
1.
|
Perangkat 1
|
PS4, TV 21 Inc, 2 Stick
|
1
|
|
2.
|
Perangkat 2
|
PS4, TV 32 Inc, 2 Stick
|
2
|
|
3.
|
Perangkat 3
|
PS4, TV 21 Inc, 2 Stick
|
3
|
|
4.
|
Perangkat4
|
PS4, TV 21 Inc, 2 Stick
|
4
|
|
5.
|
Perangkat5
|
PS4, TV 32 Inc, 2 Stick
|
5
|
Tabelpaket
|
No
|
Nama Field
|
Type data
|
Keterangan
|
|
1.
|
idPaket
|
Int
|
Pk, auto_increment
|
|
2.
|
namaPaket
|
Varchar(20)
|
|
|
3.
|
Durasi
|
Int
|
|
|
4.
|
Harga
|
Int
|
|
|
idPaket
|
namaPaket
|
Durasi
|
Harga
|
|
1.
|
Paket 1
|
1
|
10000
|
|
2.
|
Paket 2
|
2
|
15000
|
|
3.
|
MidNight
|
6
|
25000
|
|
4.
|
Daylight
|
4
|
20000
|
|
5.
|
Begadang
|
8
|
30000
|
Tabelbilik
|
No
|
Nama Field
|
Type data
|
Keterangan
|
|
1.
|
idBilik
|
Int
|
Pk, auto_increment
|
|
2.
|
namaBilik
|
Varchar(20)
|
|
|
idBilik
|
namaBilik
|
|
1.
|
Bilik 1
|
|
2.
|
Bilik2
|
|
3.
|
Bilik3
|
|
4.
|
Bilik4
|
|
5.
|
Bilik5
|
Tabeltransaksi
|
No
|
Nama Field
|
Type data
|
Keterangan
|
|
1.
|
idTransaksi
|
Int
|
Pk, auto_increment
|
|
2.
|
idPelanggan
|
Int
|
Fk
|
|
3.
|
idPerangkat
|
Int
|
Fk
|
|
4.
|
idPaket
|
Int
|
Fk
|
|
5.
|
Tanggal
|
date
|
|
|
idTransaksi
|
idPelanggan
|
idPerangkat
|
IdPaket
|
Tanggal
|
|
1.
|
1
|
1
|
5
|
2019-10-01
|
|
2.
|
1
|
3
|
3
|
2019-10-05
|
|
3.
|
5
|
4
|
1
|
2019-10-05
|
|
4.
|
2
|
2
|
1
|
2019-10-05
|
|
5.
|
4
|
5
|
1
|
2019-10-05
|
|
6.
|
7
|
1
|
4
|
2019-10-06
|
|
7.
|
8
|
4
|
2
|
2019-10-06
|
|
8.
|
6
|
3
|
4
|
2019-10-06
|
|
9.
|
4
|
2
|
3
|
2019-10-06
|
|
10.
|
5
|
1
|
3
|
2019-10-06
|
|
11.
|
3
|
3
|
1
|
2019-10-08
|
|
12.
|
1
|
4
|
2
|
2019-10-08
|
|
13.
|
9
|
5
|
3
|
2019-10-09
|
|
14.
|
10
|
2
|
4
|
2019-10-10
|
|
15.
|
5
|
3
|
3
|
2019-10-10
|
|
16.
|
4
|
2
|
1
|
2019-10-11
|
|
17.
|
2
|
1
|
1
|
2019-10-11
|
|
18.
|
91
|
4
|
3
|
2019-10-12
|
|
19.
|
3
|
5
|
4
|
2019-10-12
|
|
20.
|
4
|
4
|
5
|
2019-10-12
|
Perintah:
1.
Buatlah query
untukmembuatseluruhtabel
Query 1 :create
table pelanggan (Id_Pelanggan int, Nama_Pelanggan Varchar (25))
Query 2 :create
table perangkat (Id_Perangkat int, Nama_Perangkat Varchar (20), Keterangan Text, Id_Bilik Int)
Query 3 :create
table Paket (Id_Paket Int, Nama_Paket Varchar(20), Durasi Int, Harga Int)
Query 4 :create
table Bilik (Id_Bilik Int, Nama_Bilik Varchar(20))
Query 5 :create
table Transaksi (Id_Transaksi Int, Id_Pelanggan Int, Id_Perangkat Int, Id_Paket
Int, Tanggal date)
2.
Isikan data sesuaitabel yang
ada:
Query
1 :Insert Into Pelanggan Values ('1','Cristiano Ronaldo'), ('2','Lionel
Messi'), ('3','Frank Lampard'), ('4','Rumelu Lukaku'), ('5','Zlatan
Ibrahimovic'), ('6','Neymar Jr'), ('7','Paul Pogba'), ('8','Muhammad Salah'),
('9','Mesut Ozil'), ('10','Luiz Suares');
Query
2 :Insert Into Perangkat Values ('1','Perangkat 1','PS4, TV 21 inc, 2
Stick','1'),
('2','Perangkat
2','PS4, TV 32 inc, 2 Stick','2'),
('3','Perangkat
3', 'PS4, TV 21 inc, 2 Stick','3'),
('4','Perangkat
4', 'PS4, TV 21 inc, 2 Stick','4'),
('5','Perangkat
5', 'PS4, TV 32 inc, 2 Stick','5');
Query
3 :Insert Into Paket Values ('1','Paket 1','1','10000'),
('2','Paket
2','2','15000'),
('3','MidNight','6','25000'),
('4','Daylight','4','20000'),
('5','Begadang','8','30000');
Query
4 :Insert Into Bilik Values ('1','Bilik 1'),
('2','Bilik
2'),
('3','Bilik
3'),
('4','Bilik
4'),
('5','Bilik
5');
Query
5 :Insert Into Transaksi Values
(1,1,1,5,'2019-10-01'),
(2,1,3,3,'2019-10-05'),
(3,5,4,1,'2019-10-05'),
(4,2,2,1,'2019-10-05'),
(5,4,5,1,'2019-10-05'),
(6,7,1,4,'2019-10-06'),
(7,8,4,2,'2019-10-06'),
(8,6,3,4,'2019-10-06'),
(9,4,2,3,'2019-10-06'),
(10,5,1,3,'2019-10-06'),
(11,3,3,1,'2019-10-08'),
(12,1,4,2,'2019-10-08'),
(13,9,5,3,'2019-10-09'),
(14,10,2,4,'2019-10-10'),
(15,5,3,3,'2019-10-10'),
(16,4,2,1,'2019-10-11'),
(17,2,1,1,'2019-10-11'),
(18,91,4,3,'2019-10-12'),
(19,3,5,4,'2019-10-12'),
(20,4,4,5,'2019-10-12')
3. TampilkanidPelanggan,Namapelanggan,namaPerangkat,NamaPaket,Harga
Query: Select Pelanggan.Id_Pelanggan,
Pelanggan.Nama_Pelanggan, Perangkat.Nama_Perangkat, Paket.Nama_Paket,
Paket.Harga From Pelanggan Join Perangkat Join Paket
4. Tampilkanpenghasilanperhari(group by tanggal)
Query: SELECT Tanggal, SUM(Harga) FROM paket JOIN
transaksi ON paket.Id_Paket=transaksi.Id_Paket GROUP BY tanggal
5. Tampilkanberapapenghasilan rental perorangpelanggan(group by
pelanggan)
Query: select pelanggan.nama_pelanggan, sum(paket.harga)
from pelanggan join paket join transaksi on paket.id_paket=transaksi.id_paket
and pelanggan.id_pelanggan=transaksi.id_pelanggan group by
pelanggan.nama_pelanggan
