Hi Guys, Balik lagi nih saya mau share pengalaman saya terkait Test skill ketika interview di salah satu perusahaan . kebayangkan ketika baru datang kita dihadirkan soal untuk mengerjakan sql query. Tp jangan khawatir berikut contoh soal nya
1. Dengan
sql, bagaimana cara menampilkan kolom nama dari table siswa ?
Select nama from siswa;
2. Dengan
sql, bagaimana cara menampilkan semua kolom dari table siswa diurutkan berdasar
nama ?
Select * from siswa order by nama asc;
3. Dengan
sql, bagaimana cara menampilkan semua kolom dari table siswa dengan nama ANDI ?
Select * from siswa where nama like ‘ANDI%’;
4. Dengan
sql, bagaimana cara menampilkan semua kolom dari table siswa dengan nama yang
diawali huruf B ?
Select * from siswa where nama like ‘B%’;
5. Dengan
sql, bagaimana cara menampilkan semua kolom dari table siswa dengan nama yang
diawali huruf B dan C ?
Select * from siswa where nama like ‘B%’ and nama like ‘C%’;
6. Table A
(nomor int) berisi data numeric acak dan banyak
a. Tuliskan
query yang menampilkan nomor paling besar
Select MAX(Column_name) from A;
b. Tuliskan query yang
menampilkan nomor paling kecil
Select
MIN (Column_Name) from A;
c. Tuliskan
query yang menampilkan nomor kedua terbesar
Select
MIN from A where nomor in (select
distinct top 2 from A order by nomor desc)
a. Tuliskan
query yang menampilkan nomor kedua terkecil
Select * from A where nomor in (select distinct top 2 from A
order by nomor Asc)
7. Table A
(vote varchar(20)) berisi data pemilihan ketua kelas 6 dari 3 calon
ANDI,BUDI,DONI
Siswa kelas 6 akan memilih 3 nama tsb dan setiap pilihan
akan dimasukkan ke table A.
Ketua kelas adalah yang terbanyak dipilih.
Wakil ketua kelas adalah yang kedua terbanyak.
a. Tuliskan query
untuk menampilkan siapa yang terpilih menjadi ketua kelas
select top 1 vote, count(*) Total from A group by vote order
by Total desc
c. Tuliskan
query untuk menampilkan siapa yang terpilih menjadi wakil ketua kelas
select top 2 vote, count(*) Total from A group by vote order
by Total desc
8. Table P(nama varchar(100), alamat varchar(100), email
varchar(100), kodekelamin char(1))
Table P berisi data siswa.
Table K(kodekelamin char(1), remark varchar(30))
Table K berisi sbb :
L Laki-
laki
P Perempuan
X Tidak
terdefinisi
A. Tuliskan query untuk menampilkan banyaknya siswa per
jenis kelamin yang terdefinisi di table K. result akan berisi
kodekelamin,remark,jumlah
Select a.kodekelamin,b.remark,count(a.kodekelamin) as jumlah
from p
a inner join k b on
a.kodekelamin=b.kodekelamin group by a.kodekelamin,b.remark
b. Tuliskan query untuk menampilkan siswa dengan kodekelamin
yang tidak terdefinisi di table K.
Select a.nama,a.kodekelamin,b.remark,count(a.kodekelamin) as
jumlah from p a inner join k b on a.kodekelamin=b.kodekelamin where
b.kodekelamin =’X’ group by a.nama,a.kodekelamin,b.remark
d. Tuliskan
query untuk menampilkan siswa dengan kodekelamin yang terdefinisi di table K.
Select a.nama,a.kodekelamin,b.remark,count(a.kodekelamin) as
jumlah from p a inner join k b on a.kodekelamin=b.kodekelamin where
b.kodekelamin =’L’ and ‘P’ group by a.nama,a.kodekelamin,b.remark
9. Table source (id int, accno varchar(50), duedate date,
plafond int, customer_name varchar(100),bicoll int,ccy varchar(5),parent_id
int)
Table result (id int, accno varchar(50), duedate date,
plafond int, customer_name varchar(100),bicoll int,ccy varchar(5), jumlah int)
a. Tulis kan sql untuk mengisi table result dengan ketentuan
sbb :
i.Untuk plafond <
1000 digroup per ccy dengan accno=’GRUP1’, duedate=null,plafond=SUM(plafond),
customer_name=’GRUP1’, bicoll=NULL,
insert into result values(select id, accno, duedate, plafon,
customer_name, bicoll, ccy, count(*) from source where plafon < 1000 and
accno='GRUP1' and duedate=null and plafon = sum(plafon) and
customer_name='GRUP1' and bicoll = null group by ccy, id, accno, duedate,
plafon, customer_name, bicoll);
mantap, terimakasih banyak
ReplyDeleteTerima kasih mas
ReplyDelete