20 Pertanyaan & Jawaban Wawancara SQL Query Paling Umum [Untuk Freshers & Berpengalaman]
Diterbitkan: 2021-07-14Menghadiri wawancara SQL dan bertanya-tanya apa saja pertanyaan dan diskusi yang akan Anda lalui? Sebelum menghadiri wawancara SQL, lebih baik untuk memiliki gambaran tentang jenis pertanyaan wawancara SQL yang akan ditanyakan sehingga Anda dapat mempersiapkan mental jawaban untuk itu.
Untuk membantu Anda, saya telah membuat panduan pertanyaan dan jawaban wawancara SQL teratas untuk memahami kedalaman dan maksud sebenarnya dari pertanyaan wawancara SQL. Mari kita mulai.
Structured Query Language (SQL) adalah bahasa pemrograman yang populer dan banyak digunakan untuk mengelola, memanipulasi, dan meminta data dalam database relasional. Meskipun SQL bukanlah bahasa tercepat untuk berkomunikasi dengan database relasional, SQL tidak diragukan lagi merupakan cara paling efisien untuk menangani data terstruktur.
Dibandingkan dengan API baca-tulis tradisional seperti ISAM atau VSAM , SQL memperluas dua manfaat inti:
- Ini memungkinkan Anda untuk mengakses beberapa catatan menggunakan satu perintah.
- Ini menghilangkan kebutuhan untuk menentukan cara mengakses catatan (apakah menggunakan indeks atau tidak) dari database.
Query SQL adalah pertanyaan atau permintaan untuk mengakses data yang disimpan dalam database. Database menyimpan informasi dalam format tabel. Jadi, ini berisi baris dan kolom. Sementara bidang basis data membentuk kolom yang mengarahkan basis data mengenai informasi apa yang dapat disimpannya, baris berisi data. Berikut ini adalah contoh kumpulan data yang disebut "tblAlbum" untuk memberikan perspektif:
Sumber
Mari buat kueri SQL menggunakan data sampel ini. Kami akan fokus untuk memilih hanya album-album dengan peringkat 9 atau lebih. Jadi, pada dasarnya kami meminta kueri untuk menghasilkan daftar judul album dari database yang memiliki peringkat sama atau lebih besar dari 9. Anda akan menggunakan kata kunci yang relevan untuk mendapatkan jawaban yang diinginkan.
Kata kunci dalam skenario ini adalah – SELECT (mendikte untuk mengambil informasi dari database), FROM (tabel spesifik yang berisi data tersebut), dan WHERE (mendikte kriteria untuk mengakses informasi). Saat Anda menggunakan kata kunci ini, kueri SQL Anda akan terlihat seperti ini:
PILIH albumJudul DARI tblAlbums
Peringkat MANA >= 9;
Jadi, Anda memilih (PILIH) data dari (FROM) tabel "tblAlbums" di mana (DI MANA) peringkat album adalah 9 atau lebih tinggi. Pernyataan WHERE bisa sangat sederhana atau terlalu rumit jika ada sejumlah besar logika bersarang yang terlibat. Saat menjalankan kueri, Anda akan mendapatkan hasil berikut:
albumJudul
Simfoni di D Minor
Hati Penyair
Sekarang setelah Anda memiliki pemahaman dasar tentang apa itu kueri SQL dan bagaimana fungsinya, mari kita periksa dua puluh pertanyaan wawancara kueri SQL!
Sebelum kita mulai dengan pertanyaan wawancara kueri SQL, lihat tabel referensi ini – kueri kami akan didasarkan pada tabel ini.
Tabel Info Karyawan:
EmpID | EmpFname | Nama Emp | Departemen | Proyek | Alamat | DOB | Jenis kelamin |
1 | Rohit | Gupta | admin | P1 | Delhi | 02/12/1979 | Pria |
2 | Rahul | Mahajan | admin | P2 | Mumbai | 10/10/1986 | Pria |
3 | sonia | Banerjee | SDM | P3 | Pune | 05/06/1983 | Perempuan |
4 | Ankita | Kapoor | SDM | P4 | Chennai | 28/11/1983 | Perempuan |
5 | Swat | Garg | SDM | P5 | Delhi | 06/04/1991 | Perempuan |
Tabel EmployeePosition:
EmpID | posisi jabatan | Tanggal Bergabung | Gaji |
1 | Eksekutif | 01/04/2020 | 75000 |
2 | Pengelola | 03/04/2020 | 500000 |
3 | Pengelola | 02/04/2020 | 150000 |
2 | Petugas | 02/04/2020 | 90000 |
1 | Pengelola | 03/04/2020 | 300000 |
Pertanyaan & Jawaban Wawancara SQL Query
- Tulis kueri untuk mendapatkan EmpFname dari tabel EmployeeInfo dalam huruf besar menggunakan nama alias sebagai EmpName.
Query untuk kondisi ini adalah:
PILIH UPPER(EmpFname) SEBAGAI EmpName FROM EmployeeInfo;
- Tulis kueri untuk mendapatkan jumlah karyawan yang bekerja di departemen 'HR'.
Inilah kueri untuk permintaan ini:
SELECT COUNT(*) FROM EmployeeInfo WHERE Department = 'HR';
- Kueri apa yang akan Anda tulis untuk mengambil tanggal saat ini?
Untuk mengambil tanggal saat ini, Anda dapat menulis kueri ini di server SQL:
PILIH TANGGAL();
Untuk mengambil tanggal saat ini, Anda dapat menulis kueri ini di MySQL:
PILIH SYSTDATE();
- Tulis kueri untuk mengambil hanya nama tempat (string sebelum tanda kurung) dari kolom Alamat tabel EmployeeInfo.
Anda dapat menggunakan fungsi MID di MySQL untuk membuat kueri berikut:
PILIH MID(Alamat, 0, LOCATE('(',Address)) FROM EmployeeInfo;
Anda dapat menggunakan SUBSTRING untuk membuat kueri berikut:
PILIH SUBSTRING(Alamat, 1, CHARINDEX('(',Alamat)) FROM EmployeeInfo;
Baca Lebih Lanjut: SQL untuk Ilmu Data: Mengapa SQL
- Tulis kueri untuk membuat tabel baru yang data dan strukturnya disalin dari tabel lain.
Anda dapat menggunakan perintah SELECT INTO untuk membuat kueri berikut:
SELECT * INTO NewTable FROM EmployeeInfo WHERE 1 = 0;
Anda dapat menggunakan perintah CREATE di MySQL untuk membuat kueri berikut:
CREATE TABLE NewTable SEBAGAI SELECT * FROM EmployeeInfo;
- Tulis kueri untuk menampilkan nama karyawan yang dimulai dengan 'S'.
Ini adalah kueri yang perlu Anda tulis untuk mendapatkan nama karyawan yang namanya dimulai dengan 'S':
SELECT * FROM EmployeeInfo WHERE EmpFname LIKE 'S%';
- Tulis kueri untuk mengambil catatan N teratas.
Anda dapat menulis kueri menggunakan perintah TOP di SQL Server:
PILIH TOP N * FROM EmployeePosition ORDER BY Gaji DESC;
Anda juga dapat membuat kueri menggunakan perintah LIMIT di MySQL:
PILIH * DARI EmpPosition ORDER BY Gaji DESC LIMIT N;
- Tulis kueri untuk mendapatkan catatan yang relevan dari tabel EmployeeInfo yang diurutkan oleh Departemen dalam urutan menaik dan EmpLname dalam urutan menurun.
Anda perlu menggunakan pernyataan ORDER BY dalam SQL untuk tujuan ini;
PILIH * DARI EmployeeInfo ORDER BY Departemen asc, EmpFname desc;
- Tulis kueri untuk mendapatkan detail karyawan yang EmpFname-nya diakhiri dengan 'A'.
Anda dapat menggunakan operator LIKE di SQL untuk membuat kueri untuk masalah ini:
SELECT * FROM EmployeeInfo WHERE EmpFname LIKE '____a';
10.Buat kueri untuk mengambil detail karyawan yang memiliki "DELHI" sebagai alamat mereka.
SELECT * FROM EmployeeInfo WHERE Address LIKE 'DELHI%';
Baca: 9 Alat Ilmu Data Teratas di tahun 2020
- Tulis kueri untuk mengambil semua karyawan yang juga memegang posisi manajerial.
Panduan Pertanyaan dan Jawaban Wawancara SQL tidak akan lengkap tanpa pertanyaan ini.
Berikut query untuk mendapatkan karyawan yang memegang posisi manajerial:
PILIH E.EmpFname, E.EmpLname, P.EmpPosition
FROM EmployeeInfo E INNER JOIN EmployeePosition P ON
E.EmpID = P.EmpID DAN P.EmpPosition IN ('Manager');
- Buat kueri untuk menghasilkan catatan pertama dan terakhir dari tabel EmployeeInfo.
Salah satu pertanyaan wawancara SQL yang paling umum.
Berikut kueri untuk mengambil catatan pertama dari tabel EmployeeInfo:
SELECT * FROM EmployeeInfo WHERE EmpID = (SELECT MIN(EmpID) FROM EmployeeInfo);
Berikut kueri untuk mengambil catatan terakhir dari tabel EmployeeInfo:
SELECT * FROM EmployeeInfo WHERE EmpID = (SELECT MAX(EmpID) FROM EmployeeInfo);
- Buat kueri untuk memeriksa apakah nilai yang diteruskan ke kueri mengikuti format tanggal tabel EmployeeInfo dan EmployeePosition.
Anda dapat menggunakan fungsi IsDate() dalam SQL untuk memeriksa apakah nilai yang diteruskan mengikuti format yang ditentukan atau tidak. Ini mengembalikan 1 (benar) atau 0 (salah) yang sesuai. Begini tampilan kuerinya:
PILIH TANGGAL('01/04/2020′) SEBAGAI “MM/DD/YY”;
Menjalankan kueri ini akan mengembalikan 0 karena nilai yang diteruskan tidak cocok dengan format yang ditentukan.
- Buat kueri untuk mendapatkan tampilan karyawan yang memiliki gaji sama dengan atau lebih besar dari 150000.
Kueri untuk permintaan ini adalah:
PILIH EmpName FROM Karyawan WHERE Gaji>=150000;
- Tulis kueri untuk mengambil tahun menggunakan tanggal.
Anda bisa mendapatkan tahun dari tanggal di server SQL dengan menjalankan kueri berikut:
PILIH TAHUN(GETDATE()) sebagai “Tahun”;
- Buat kueri SQL untuk mengambil EmpPostion dan total gaji yang dibayarkan untuk setiap posisi karyawan.
Query untuk permintaan ini adalah:
SELECT EmpPosition, SUM(Gaji) dari EmployeePosition GROUP BY EmpPosition;
- Tulis kueri untuk menemukan rekaman duplikat dari tabel.
Salah satu pertanyaan paling umum dalam panduan pertanyaan dan jawaban wawancara SQL.
PILIH EmpID, EmpFname, Departemen COUNT(*)
DARI EmployeeInfo GROUP OLEH EmpID, EmpFname, Department
MEMILIKI JUMLAH(*) > 1;
- Buat kueri untuk mengambil gaji tertinggi ketiga dari tabel EmpPosition.
PILIH TOP 1 gaji
DARI(
PILIH TOP 3 gaji
DARI employee_table
ORDER BY gaji DESC) SEBAGAI emp
ORDER BY gaji ASC;
- Tulis kueri SQL untuk menemukan catatan genap dan ganjil di tabel EmployeeInfo.
Anda harus menggunakan fungsi MOD() untuk mengambil record genap dan ganjil dari sebuah tabel. Untuk catatan genap, kuerinya adalah:
SELECT EmpID FROM (SELECT rowno, EmpID from EmployeeInfo) WHERE MOD(rowno,2)=0;
Untuk catatan ganjil, kuerinya adalah:
SELECT EmpID FROM (SELECT rowno, EmpID from EmployeeInfo) WHERE MOD(rowno,2)=1;
- Buat kueri untuk mengambil daftar karyawan dari departemen yang sama.
Inilah kueri untuk permintaan ini:
Pilih DISTINCT E.EmpID, E.EmpFname, E.DepartmentFROM EmployeeInfo E, Employee E1
WHERE E.Department = E1.Department DAN E.EmpID != E1.EmpID;
Pelajari Kursus Perangkat Lunak online dari Universitas top dunia. Dapatkan Program PG Eksekutif, Program Sertifikat Tingkat Lanjut, atau Program Magister untuk mempercepat karier Anda.
Kesimpulan
Dengan itu, kami sampai di akhir daftar pertanyaan wawancara kueri SQL kami. Kami berharap kueri ini memberi Anda gambaran yang adil tentang pola kueri SQL standar dan cara membuat kueri SQL. Semakin banyak Anda berlatih, semakin baik Anda menulis kueri SQL untuk mengakses dan memanipulasi data dalam tabel data.
Jika Anda penasaran untuk meningkatkan pengetahuan SQL Anda, dan lebih banyak lagi tentang pengembangan tumpukan penuh, lihat PG Diploma IIIT-B & upGrad dalam Pengembangan Perangkat Lunak Stack Penuh yang dibuat untuk para profesional yang bekerja dan menawarkan 10+ studi kasus & proyek, praktik langsung lokakarya, bimbingan dengan pakar industri, 1-on-1 dengan mentor industri, 400+ jam pembelajaran dan bantuan pekerjaan dengan perusahaan-perusahaan top.