A.
Buat Query untuk menyelesaikan soal-soal dibawah
ini.
- Temukan 4 kesalahan pada statement SELECT berikut : ( di anulir )
- Tampilkan nomor pegawai, nama, pekerjaan, dan tanggal mulai bekerja untuk tiap pegawai.
Jawab :
Select ‘nomor_pegawai’,
‘nama’, ‘pekerjaan’, ‘ tanggal_mulai_bekerja’ from pegawai;
- Tampilkan semua kolom dari table EMP. Semua kolom digabung jadi satu dengan tanda koma sebagai pemisah, kemudian diberi judul “ OUTPUT”.
Jawab :
SELECT EMP (pegawai.nomor_pegawai,”,”, pegawai.nama, ”,”
pegawai.pekerjaan, ”,” pegawai.tanggal_mulai_bekerja) As OUTPUT FROM pegawai;
- Tampilkan nama dari semua pegawai yang memiliki nama yang mengandug karakter’A’ pada huruf ketiga.
Jawab :
Select
`Nama`,char_length(Nama) AS panjang from pegawai;
WHERE `Nama` LIKE 'A%';
- Tampilkan nama, gaji , dan komisi dari semua pegawai yang memiliki komisi ( kolom komisi tidak sama dengan NULL). Urutkan berdasarkan gaji dan komisi, dengan urutan menurun.
Jawab :
Select pegawai.nama, pegawai.gaji, pegawai.komisi from pegawai
where komisi <> 0 and gaji <> 0 order by gaji;
- Tampilkan nama, gaji, dan komisi dari semua pegawai yang memiliki jumlah komisi lebih besar dari jumlah gaji setelah dinaikan 10%.
Jawab :
Select pegawai.`Nama`,
pegawai.`Gaji`, pegawai.`Komisi` from pegawai where komisi >= (0.1*gaji);
- Tampilkan nomor pegawai, nama, gaji dan gaji setelah dinaikan 15%
Jawab :
SELECT `Kode_Pegawai`, `Nama`, `Gaji`,( `Gaji`* 0.15 )+
`Gaji` AS Total_gaji FROM `pegawai`;
- Tampilkan nama pegawai, tanggal mulai bekerja dan tampilan tanggal hari senin pertama setelah 6 bulan dia bekerja.
Jawab :
Select pegawai.nama, pegawai.tanggal_mulai_bekerja,
add_month(‘tanggal_mulai_bekerja’,6) tgl_setelah_6bulan from pegawai where
next_day(tgl_setelah_6bulan,’MONDAY’);
- Untuk tiap pegawai tampilkan nama pegawai, hitung jumpah bulan pegawai tersebut telah bekerja, lakukan pembulatan keatas ( round ).
Jawab :
Select
pegawai.nama,pegawai.tanggal_mulai_bekerja,month_between(sysdate,tanggal_mulai_bekerja)jumlah_hari_kerja,
from pegawai;
- Tampilkan nama pegawai dan nama department untuk semua pegawai yang memiliki huruf ‘A’ pada namanya.
Jawab :
Select ‘nama pegawai’, ‘nama department’ char_length(‘nama pegawai’, ‘nama department’)
AS panjang from pegawai ;
WHERE `Nama` LIKE 'A%';
- Tampilkan nilai tertiggi, terendah , jumlah dan rata-rata gaji pada tiap-tiap jenis pekerjaan yang ada.
Jawab :
Select max(gaji) AS tertinggi,
min(gaji) As terendah, sum(gaji) AVG(gaji) as rata2 from pegawai;
- Buat query yang menampilkan perbedaan antara nilai terendah dan nilai tertinggi dari gaji pegawai.
Jawab :
Select max(gaji) AS tertinggi,
min(gaji) As terendah from pegawai;
- Buat query untuk menampilkan nama department, lokasinya, jumlah pegawai yang bekerja, dan rata2 gaji pada department tersebut. Bulatkan rata-rata gaji ke 2 anggka tersebut.
Jawab :
Select nama department, lokasinya, jumlah, avg(gaji) As rata2 from pegawai;
B.
Jawab pertanyaan dibawah ini !
·
Ada berapa tipe
JOINT pada SQL ? jelaskan masing-masing tipe JOINT tersebut.
Ø
Ada 2 (dua) tipe utama join, yaitu equi-join dan
non-equijoin
1.
Equi-join
1)
Misal table EMP
memiliki primary key empno, dan memiliki foreign key deptno dimana deptno
ini merupakan primary key dari table yang lain yaitu table DEPT.
2)
Relasi antara EMP dengan DEPT disebut equi-join.
2.
non-equijoin
1)
Relasi antara dua table disebut non-equijoin jika kolom
pada table pertama berkorespondensi
langsung dengan kolom pada table kedua.
2)
Misal table EMP
terdiri dari kolom empno, ename, sal. Dan table SALGRADE terdiri dari kolom
grade, losal, hisal.
3)
Maka kolom sal
pada table EMP berkorespondensi langsung dengan losal dan hisal pada table
SALGRADE yang nantinya akan memberikan suatu nilai grade yang bersesuaian.
trm ksh ats infonnya sangat bermanfa'at sekali bt sy prbdi
BalasHapushttp://latihanbasisdata.blogspot.com/2016/05/soal-uas-basis-data.html
BalasHapussoal uas basis data 2016