You are on page 1of 8

TUGAS SISTEM BASIS DATA

NAMA : MUHAMMAD JIBRIL ALQARNI


NIM : 145150201111154
KELAS : IF - J

A. Proses pembuatan database

Script

Create database pembalap

B. Proses pembuatan table

1. Table pembalap
Script
CREATE TABLE PEMBALAP (NO_PEMBALAP SMALLINT NOT NULL,
NAMA VARCHAR(10),
TGL_LAHIR DATE,
KEBANGSAAN VARCHAR(15), PRIMARY KEY (NO_PEMBALAP));

2. Table TIM
Script
CREATE TABLE TIM (KODE_TIM SMALLINT NOT NULL,
NAMA_TIM VARCHAR(10),
KEPALA_TIM VARCHAR (10),
PRIMARY KEY(KODE_TIM));

3. Table Sirkuit
Script

CREATE TABLE SIRKUIT (KODE_SIRKUIT SMALLINT NOT NULL,


NAMA_SIRKUIT VARCHAR(10),
TEMPAT VARCHAR(10),
PANJANG_SIRKUIT SMALLINT, PRIMARY KEY (KODE_SIRKUIT));

4. Table Motor
Script
CREATE TABLE MOTOR (KODE_MOTOR SMALLINT NOT NULL,
KODE_TIM SMALLINT,
PRIMARY KEY (KODE_MOTOR),
CONSTRAINT RELMT FOREIGN KEY (KODE_TIM) REFERENCES TIM (KODE_TIM));

5. Table Race
Script
CREATE TABLE RACE (KODE_SERI SMALLINT NOT NULL,
KODE_SIRKUIT SMALLINT ,
PRIMARY KEY (KODE_SERI),
CONSTRAINT RELRS FOREIGN KEY(KODE_SIRKUIT) REFERENCES
SIRKUIT(KODE_SIRKUIT));
6. Table Hasil_Race
Script
CREATE TABLE HASIL_RACE (NO_PEMBALAP SMALLINT,
CONSTRAINT RELPH FOREIGN KEY (NO_PEMBALAP) REFERENCES
PEMBALAP(NO_PEMBALAP),
KODE_SERI SMALLINT, CONSTRAINT RELRH FOREIGN KEY(KODE_SERI)
REFERENCES RACE(KODE_SERI),
KODE_MOTOR SMALLINT, CONSTRAINT RELMH FOREIGN KEY(KODE_MOTOR)
REFERENCES MOTOR(KODE_MOTOR));

C. Proses input data

1. Table pembalap
INSERT INTO PEMBALAP VALUES (46, 'ROSSI', '1980-10-29', 'ITALY') ,
(99, 'LORENZO', '1977-07-22', 'SPANYOL'),
(22, 'BIAGI', '1970-09-08', 'BRAZIL'),
(88, 'CABAYE', '1988-01-26', 'FRANCE'),
(77, 'SIMON', '1990-03-04', 'BELANDA'),
(90, 'TOKAWA', '1970-02-27', 'JEPANG'),
(10, 'HANZO', '1978-11-12', 'KOREA'),
(11, 'DONI', '1990-12-22', 'INDONESIA');

2. Table TIM
INSERT INTO TIM VALUES (01, 'ABC', 'JANUAR'),
(02, 'BBB', 'CHANDRA'),
(03,'ASD', 'RIDOK'),
(04, 'BASDAT', 'MASTAKI');

3. Table Sirkuit
INSERT INTO SIRKUIT VALUES (111, 'SEPANG', 'MALAYSIA', 4),
(222, 'CATALUNYA', 'SPANYOL', 3),
(333, 'SENTUL', 'INDONESIA', 4),
(444, 'LE MANS', 'FRANCE', 5);

4. Table Motor
INSERT INTO MOTOR VALUES (046, 'YAMAHA', '125cc', 01),
(099, 'KAWASAKI', '125cc', 02),
(022, 'SUZUKI', '125cc', 03),
(077, 'HONDA', '125cc', 04);

5. Table Race
INSERT INTO RACE VALUES (021, '2015-07-11', 111),
(031, '2015-02-07', 222),
(041, '2015-07-11', 333),
(051, '2015-09-11', 444);

6. Table Hasil_race
INSERT INTO HASIL_RACE VALUES (021, 46, 046, 100, '01:20:11', 120),
(021, 99, 046, 88, '01:30:12', 110),
(021, 22, 099, 72, '01:31:22', 111),
(021, 88, 099, 91, '01:22:54', 102),
(021, 77, 022, 90, '01:21:22', 99),
(021, 90, 022, 88, '01:44:43', 90),
(021, 10, 077, 89, '01:50:33', 88),
(021, 11, 077, 84, '01:42:12', 77);

INSERT INTO HASIL_RACE VALUES (031, 46, 046, 80, '01:27:12', 100),
(031, 99, 046, 77, '01:33:13', 101),
(031, 22, 099, 99, '01:36:23', 122),
(031, 88, 099, 78, '01:29:54', 102),
(031, 77, 022, 66, '01:20:25', 122),
(031, 90, 022, 88, '01:41:46', 105),
(031, 10, 077, 90, '01:33:37', 90),
(031, 11, 077, 66, '01:11:18', 98);

INSERT INTO HASIL_RACE VALUES (041, 46, 046, 100, '01:21:19', 99),
(041, 99, 046, 102, '01:32:18', 101),
(041, 22, 099, 90, '01:33:27', 88),
(041, 88, 099, 100, '01:24:56', 90),
(041, 77, 022, 99, '01:25:25', 111),
(041, 90, 022, 102, '01:46:44', 102),
(041, 10, 077, 111, '01:37:33', 120),
(041, 11, 077, 99, '01:18:12', 111);

INSERT INTO HASIL_RACE VALUES (051, 46, 046, 110, '01:22:11', 109),
(051, 99, 046, 122, '01:33:12', 120),
(051, 22, 099, 99, '01:34:21', 90),
(051, 88, 099, 101, '01:21:51', 100),
(051, 77, 022, 95, '01:27:26', 88),
(051, 90, 022, 112, '01:42:47', 110),
(051, 10, 077, 110, '01:30:31', 109),
(051, 11, 077, 94, '01:11:16', 86);
Soal
1. Tampilkan Nama Pembalap, Poin, No_Pembalap, Kode_Motor pada race dengan kode seri
021, kecuali nama pembalap dengan awalan C.

SCRIPT

SELECT NAMA, POIN , P.NO_PEMBALAP, M.KODE_MOTOR


FROM PEMBALAP P JOIN HASIL_RACE H
ON P.NO_PEMBALAP = H.NO_PEMBALAP
JOIN RACE R ON R.KODE_SERI = H.KODE_SERI
JOIN MOTOR M ON M.KODE_MOTOR = H.KODE_MOTOR
WHERE R.KODE_SERI = 021
AND NAMA NOT LIKE 'C%';

2. Tampilkan nama pembalap, no_pembalap dan kecepatan max masing pembalap


dari semua race yang ada.

SCRIPT

SELECT P.NAMA, P.NO_PEMBALAP, MAX(H.KECEPATAN) AS MAX_KECEPATAN FROM


HASIL_RACE H JOIN PEMBALAP P
ON H.NO_PEMBALAP = P.NO_PEMBALAP , RACE R
GROUP BY P.NO_PEMBALAP, P.NAMA;
3. Tampilan nama pembalap, tipe motor, kecepatan, cc dan waktu dimana
kecepatan lebih dari 100 dan nomor pembalap sama dengan 46

SELECT NAMA, TIPE, KECEPATAN, CC, WAKTU


FROM MOTOR JOIN HASIL_RACE
ON MOTOR.KODE_MOTOR = HASIL_RACE.KODE_MOTOR
JOIN PEMBALAP P
ON P.NO_PEMBALAP= HASIL_RACE.NO_PEMBALAP
WHERE KECEPATAN > 100
AND P.NO_PEMBALAP = 46;

SCRIPT

You might also like