tugas mandiri 4 basis data lanjut- menampilkan data dari banyak tabel - agung priyo sembodo -...
TRANSCRIPT
Agung Priyo Sembodo 7411030854 – [email protected] 1
TUGAS MANDIRI 4
(MENAMPILKAN DATA DARI BANYAK TABEL) BASIS DATA LANJUT
Nama Mahasiswa : Agung Priyo Sembodo NRP : 7411030854 Jurusan : D3 PJJ – Teknik Informatika Kelas : 2 Informatika B Mata Kuliah : Basis Data Lanjut Dosen Pengajar : Rengga Asmara, S.Kom
1. Buat query untuk menampilkan nama pegawai, nomer department dan nama department dari
semua pegawai
Jawab :
a. Source Code
b. Capture Output
2. Buat daftar yang unik dari semua pekerjaan pada department 30, tampilkan pula lokasi dari
department 30 pada output.
Jawab :
SQL> Select A.ename, A.deptno, B.dname
2 From emp A, dept B
3 Where A.deptno=B.deptno;
Agung Priyo Sembodo 7411030854 – [email protected] 2
a. Source Code
b. Capture Output
3. Tampilkan nama pegawai, nama department dan lokasi dari semua pegawai yang memiliki
komisi (komisi tidak sama dengan NULL)
Jawab :
a. Source Code
b. Capture Output
4. Tampilkan nama pegawai dan nama department untuk semua pegawai yang memiliki huruf
‘A’ pada namanya.
SQL> Select A.job, B.loc
2 From emp A, dept B
3 Where B.deptno='30' And A.deptno='30'
4 Group By A.job, B.loc;
SQL> Select A.ename , B.dname , B.loc
2 From emp A, dept B
3 Where A.deptno=B.deptno And A.comm !='0';
Agung Priyo Sembodo 7411030854 – [email protected] 3
Jawab :
a. Source Code
b. Capture Output
5. Buat Buat query untuk menampilkan nama pegawai, pekerjaan, nomer department, dan nama
department untuk semua pegawai yang bekerja di kota ‘DALLAS’
Jawab :
a. Source Code
SQL> Select A.ename, B.dname
2 From emp A, dept B
3 Where A.ename like '%A%' AND A.deptno=B.deptno;
SQL> Select A.ename , A.job, B.deptno, B.dname
2 From emp A, dept B
3 Where B.loc='DALLAS' And B.deptno=A.deptno;
Agung Priyo Sembodo 7411030854 – [email protected] 4
b. Capture Output
6. Buat query untuk menampilkan nama pegawai dan nomer pegawai, nama manager dan nomer
pegawai dari manager.
Jawab :
a. Source Code
b. Capture Output
7. Modifikasi query pada nomer 6, buat outer join untuk menampilkan pula data pegawai yang
tidak mempunyai manager.
SQL> Select A.empno, A.ename PEGAWAI, A.mgr empno , B.ename MANAGER
2 From emp A, emp B
3 Where A.mgr=B.empno;
Agung Priyo Sembodo 7411030854 – [email protected] 5
Jawab :
a. Source Code
b. Capture Output
8. Buat query yang menampilkan nama pegawai, nomer department, dan semua employee yang
bekerja pada department yang sama dengan employee.
Samakan judul kolom seperti yang ada pada hasil berikut :
Jawab :
a. Source Code
SQL> Select A. empno, A.ename PEGAWAI, A.mgr empno, B.ename MANAGER
2 From EMP A, EMP B
3 Where A.mgr=B.empno(+)
4 Order By A.empno ;
SQL> Select A.deptno DEPARTMENT, A.ename PEGAWAI, B.ename KOLEGA
2 From EMP A, EMP B
3 Where A.deptno=B.deptno And A.ename != B.ename
4 Order By A.deptno, B.ename, A.ename;
Agung Priyo Sembodo 7411030854 – [email protected] 6
b. Capture Output
9. Buat Tampilkan struktur dari table SALGRADE. Buat query yang menampilkan nama
pegawai , pekerjaan, nama department, gaji dan grade untuk semua pegawai
Jawab :
a. Source Code
b. Capture Output
10. Buat query untuk menampilkan nama dan tanggal mulai bekerja dari pegawai yang tanggal
bekerjanya setelah pegawai bernama ‘BLAKE’
SQL> Select E.ename, E.job, D.dname, E.sal, S.grade
2 From EMP E, DEPT D, SALGRADE S
3 Where E.deptno=D.deptno And E.sal BETWEEN S.losal AND S.hisal
4 Order by S.grade, D.dname, E.sal;
Agung Priyo Sembodo 7411030854 – [email protected] 7
Jawab :
a. Source Code
b. Capture Output
11. Tampilkan semua nama pegawai dan tanggal kerjanya serta nama manager dan tanggal
kerjanya dimana tanggal mulai kerja pegawai lebih dulu daripada tanggal mulai kerja
managernya.
Jawab :
a. Source Code
b. Capture Output
SQL> Select E.ename, E.hiredate
2 From EMP E
3 Where E.hiredate>(Select hiredate From Emp Where ename ='BLAKE');
SQL> Select E.ename PEGAWAI, E.hiredate HIREDATE, M.ename MANAGER, M.hiredate
HIREDATE
2 From EMP E, EMP M
3 Where E.mgr=M.empno And E. hiredate < M. hiredate;
Agung Priyo Sembodo 7411030854 – [email protected] 8