Anda di halaman 1dari 5

Nama : Natha Fahrezi Azra Aripianto

Nim : 22346017
Prodi : Informatika
Mata Kuliah : Praktikum Basis Data
Dosen Pengampuh :Jusmardi, S.Kom,.M.Pd.T

Membuat database dengan tabel : Tabel Pegawai,Tabel jabatan,Tabel Anak:

Tabel Jabatan
MariaDB [pertemuan6]> create table Tabel_Jabatan(
-> KD_Jabatan varchar(5) primary key, Jabatan varchar (30), Gaji
int(10));
Query OK, 0 rows affected (0.036 sec)

Tabel Pegawai
MariaDB [pertemuan6]> create table Tabel_Pegawai( NIP VARCHAR (10)
PRIMARYKEY, NAMA VARCHAR (25), JK VARCHAR (5), KOTA
VARCHAR (15), KD_Jabatan varchar (5), foreign key (KD_Jabatan)
references Tabel_Jabatan(KD_Jabatan));

Query OK, 0 rows affected (0.031 sec)

Tabel Anak
create table Tabel_Anak(NIP varchar(10), foreign key(NIP) references
Tabel_Pegawai(NIP),Nama_Anak varchar (30), JK varchar (5),umur int
(3));

Query OK, 0 rows affected (0.030 sec)


Sintaks:

MariaDB [pertemuan6]> insert into Tabel_Jabatan values

-> ('J01','General Manager','4000000'),

-> ('J02','Marketing Leader','3500000'),

-> ('J03','System Analyst','3000000'),

-> ('J04','Programmer','2750000');

Query OK, 4 rows affected (0.074 sec)

Records: 4 Duplicates: 0 Warnings: 0

MariaDB [pertemuan6]> INSERT INTO Tabel_Pegawai VALUES


('P001','MuhammadYunus','L','Padang','J01'),('P002','Sutopo','L','Solo','J04'),
('P003','SitiSarah','P','Medan','J02'),('P004','Aminah','P','Padang','J03'),('P005
','Mulia','L','Padang','J03'),('P006','Rizky','L','Bukittinggi','J04');

Query OK, 6 rows affected (0.010 sec)

Records: 6 Duplicates: 0 Warnings: 0

MariaDB [pertemuan6]> INSERT INTO Tabel_Anak (NIP, Nama_Anak,


JK, umur) VALUES
-> ('P002','Tono S.M.','L',21),

-> ('P001','Ratu Balqis','P',18),

-> ('P004','Lindawati','P',9),

-> ('P006','Drajat','L',15),

-> ('P006','Rahmad','L',10);

Query OK, 5 rows affected (0.013 sec)

Records: 5 Duplicates: 0 Warnings: 0

Buatlah perintah view untuk :

1. Mengurutkan data pegawai berdasarkan kolom nama. Gunakan order


by, dan simpan dengan v_peg1.
Sintaks:
MariaDB [pertemuan6]> create view v_peg1 as select*from
Tabel_Pegawai order
by NAMA;
Query OK, 0 rows affected (0.008 sec)
2. Menampilkan data pegawai yang mana pasagannya kolom data gaji
dicantumkan pada table tersebut. Gunakan IN, dan simpan dengan
v_peg2.
Sintaks:
MariaDB [pertemuan6]> create view v_peg2 as select*from
Tabel_Pegawai where
KD_Jabatan in (select KD_Jabatan from Tabel_Jabatan);
Query OK, 0 rows affected (0.043 sec)

3. Menampilkan data pegawai yang mana passangannya kolom data


anaknya tidak trecantum pada tabel tersebut. Gunakan NOT IN, dan
simpan denga v_peg3
Sintaks:
MariaDB [pertemuan6]> create view v_peg3 as select*from
Tabel_Pegawai where
NIP not in(select NIP from Tabel_Anak);
Query OK, 0 rows affected (0.004 sec)

4. Menampilkan data pegawai pegawai dihubungkan dengan data anak,


namun tidak menampilkan kolom jabatan. Gunakan JOIN, dan
simpan dengan v_peg4.
Sintaks:
MariaDB [pertemuan6]> create view v_peg4 as select
p.NIP,p.NAMA,p.JK,p.KOTA,p.KD_Jabatan,a.Nama_Anak,a.JK as
JK_Anak,a.umur From Tabel_Pegawai p join Tabel_Anak a on p.NIP
= a.NIP;
Query OK, 0 rows affected (0.005 sec)
5. Menampilkan data pegawai dan jumlah anak yang dimiliki masing-
masing pegawai. Simpan dengan v_peg5.
Sintaks:
MariaDB [pertemuan6]> create view v_peg5 as select
p.NIP,p.NAMA,count(a.NIP)as Jumlah_Anak from Tabel_Pegawai p
left join Tabel_Anak a on p.NIP = a.NIP group by p.NIP,p.NAMA;
Query OK, 0 rows affected (0.005 sec)

Anda mungkin juga menyukai