19 Pertanyaan & Jawaban Wawancara SQL Wajib Dibaca: Untuk Pemula & Berpengalaman di 2022

Diterbitkan: 2021-01-07

Pertanyaan dan Jawaban Wawancara SQL

Khawatir tentang wawancara Anda? Kami membantu Anda menjawab Pertanyaan Wawancara SQL Anda. Ini adalah beberapa pertanyaan yang paling sering diajukan dalam Wawancara Sql.
Apa pun peran pekerjaan yang Anda pilih dalam industri perangkat lunak dan TI, keterampilan SQL adalah suatu keharusan. Bahkan saat ini, RDBMS adalah salah satu database yang paling banyak digunakan di seluruh dunia, dan karenanya, SQL merupakan bagian tak terpisahkan dari domain pengembangan. Nama-nama besar seperti Uber, Netflix, Airbnb, dan tentu saja, Microsoft menggunakan SQL sebagai alat manajemen basis data utama mereka.

Alasan mengapa SQL sangat populer saat ini adalah karena ia mendukung sejumlah pemrosesan transaksi, aplikasi analitik, dan operasi intelijen bisnis di lingkungan TI perusahaan.

Dalam posting ini, kami akan membantu Anda memulai dengan dasar-dasar SQL. Inilah mengapa kami membuat daftar pertanyaan wawancara SQL yang paling sering ditanyakan. Semoga pertanyaan wawancara SQL membantu Anda dalam wawancara Anda. Pertanyaan wawancara SQL ini akan memberi Anda ide yang relatif bagus tentang konsep dasar SQL dan bagaimana Anda harus melanjutkannya.

Pertanyaan & Jawaban Wawancara SQL Teratas

1. Definisikan SQL.

SQL atau Structured Query Language adalah sistem manajemen basis data relasional yang dibuat oleh Microsoft. Hal ini secara eksplisit dirancang untuk berkomunikasi dengan database. ANSI (American National Standards Institute) menyatakan bahwa SQL adalah bahasa query standar untuk Relational Database Management Systems (RDBMS).

Ini tidak hanya digunakan untuk memelihara RDBMS tetapi juga untuk melakukan berbagai operasi manipulasi data lainnya pada berbagai jenis data. Misalnya, SQL digunakan untuk membuat database, membuat tabel dalam database, mengambil data dari database, memperbarui tabel dalam database, mengeksekusi query, dan sebagainya.

Baca Lebih Lanjut: SQL untuk Ilmu Data: Mengapa SQL

2. Definisikan Basis Data.

Basis data mengacu pada bentuk data terstruktur yang disimpan dalam bentuk terorganisir di komputer untuk memfasilitasi akses, penyimpanan, pengambilan, dan pengelolaan data yang mudah. Basis data pada dasarnya adalah kumpulan skema, tabel, kueri, tampilan, dll.

3. Apa perbedaan RDBMS dengan DBMS?

RDBMS atau Sistem Manajemen Basis Data Relasional berbeda dari DBMS dalam arti bahwa RDBMS menyimpan data sebagai kumpulan tabel di mana Anda dapat menentukan hubungan antara bidang umum tabel sedangkan, dalam DBMS, Anda tidak dapat melakukannya.

Tidak seperti RDBMS yang menyimpan data dalam bentuk tabel, DBMS berfungsi lebih seperti File Manager yang menyimpan data dalam database daripada menyimpannya dalam sistem file.

RDBMS adalah dasar untuk banyak sistem manajemen database modern seperti MySQL, Microsoft SQL Server, Oracle, IBM DB2, dan Amazon Redshift.

4. Tentukan Kendala.

Dalam SQL, constraint digunakan untuk menentukan batasan pada tipe data dari sebuah tabel atau mendeklarasikan aturan mengenai data dalam sebuah tabel dalam database. Batasan dapat ditentukan untuk bidang tunggal dan ganda dalam tabel SQL, baik selama pembuatan tabel atau setelah membuatnya menggunakan perintah ALTER TABLE.

Beberapa batasan dalam SQL adalah:

  • BUKAN NULL
  • MEMERIKSA
  • BAWAAN
  • UNIK
  • KUNCI UTAMA
  • KUNCI ASING

5. Tentukan – Kunci Utama, Kunci Unik, dan Kunci Asing.

Kunci utama adalah kombinasi bidang yang membantu menentukan baris secara unik. Kunci utama harus memiliki nilai unik, dan juga mengandung batasan NOT NULL implisit, artinya kunci utama tidak boleh memiliki nilai NULL.

Batasan kunci unik digunakan untuk memastikan bahwa semua nilai dalam kolom berbeda. Ini membantu untuk mengidentifikasi setiap record dalam database secara unik. Tidak seperti kunci utama (hanya ada satu kunci utama yang ditentukan per tabel), mungkin ada beberapa batasan unik yang ditentukan per tabel.

Kunci asing terdiri dari satu atau kumpulan bidang dalam satu tabel yang dapat digunakan untuk merujuk ke kunci utama tabel lain. Kunci ini membantu menjaga integritas referensial dalam hubungan antara dua tabel. Sementara tabel yang berisi batasan kunci asing dikenal sebagai tabel anak, tabel yang berisi kunci kandidat diberi label sebagai tabel induk.

6. Tentukan Gabung. Apa saja jenis-jenis Gabung?

Join adalah klausa SQL yang dirancang untuk menggabungkan record atau baris dari dua atau lebih tabel berdasarkan kolom terkait di antara mereka. Gabung bertindak seperti kata kunci yang digunakan untuk meminta data dari lebih banyak tabel berdasarkan hubungan antara bidang tabel. Mereka terutama digunakan untuk mengambil data. Namun, pengambilan data sangat tergantung pada hubungan antar tabel.

Ada empat jenis gabungan:

  • Inner Join – Ini digunakan untuk mengembalikan catatan atau baris yang berisi setidaknya satu nilai yang cocok di antara tabel.
  • Gabung Kanan – Ini mengembalikan baris yang merupakan kecocokan umum antara tabel dan semua baris lain yang terletak di sisi kanan tabel. Sederhananya, gabungan kanan mengembalikan semua baris dari tabel sisi kanan terlepas dari fakta bahwa tidak ada kecocokan yang tersedia di tabel sisi kiri.
  • Gabung Kiri – Seperti gabungan kanan, gabungan kiri mengembalikan baris yang umum di antara tabel dan semua baris yang terletak di tabel sisi kiri, bahkan jika tidak ada kecocokan yang tersedia di tabel sisi kanan.
  • Gabung Penuh – Gabung ini mengembalikan baris ketika ada satu tabel yang terdiri dari baris yang cocok. Dengan kata lain, itu menciptakan satu set yang berisi hasil gabungan kanan dan kiri. Oleh karena itu, kumpulan hasil mencakup semua baris dari tabel sisi kiri dan kanan.

7. Apa itu Indeks? Sebutkan macam-macam indeks.

Dalam SQL, indeks adalah metode penyetelan kinerja yang memungkinkan pengambilan catatan dari tabel dengan lebih cepat. Mereka mempercepat proses pencarian dalam database - indeks membuat entri untuk setiap nilai, sehingga membuatnya lebih cepat untuk mengambil data.

Indeks digunakan untuk menemukan baris yang cocok dengan beberapa kolom dengan menelusuri subset data tersebut untuk menemukan kecocokan yang benar.

Ada tiga jenis indeks:

  • Indeks Unik – Indeks ini memastikan bahwa tidak ada dua baris data dalam tabel yang memiliki nilai kunci yang identik, sehingga menjaga integritas data. Anda dapat secara otomatis menerapkan indeks unik saat menentukan kunci utama.
  • Clustered Index – Indeks ini membantu menyusun ulang atau mengatur ulang urutan fisik tabel dan mencari berdasarkan nilai kunci. Dalam indeks ini, urutan baris yang terdapat dalam database sesuai dengan urutan baris dalam indeks. Inilah sebabnya mengapa sebuah tabel hanya dapat memiliki satu indeks berkerumun.
  • Indeks Nonclustered - Indeks ini mempertahankan urutan logis data. Ini digunakan untuk membuat entitas terpisah di dalam tabel yang merujuk ke tabel asli. Sebuah tabel dapat memiliki beberapa indeks nonclustered.

8. Apa itu AUTO_INCREMENT?

AUTO_INCREMENT digunakan untuk secara otomatis menghasilkan nomor unik setiap kali catatan baru ditambahkan atau dimasukkan ke dalam tabel. Karena tabel hanya memiliki satu kunci utama, kunci utama ini ditambahkan sebagai bidang AUTO_INCREMENT yang membantu menambah bidang setiap kali catatan baru ditambahkan.

Secara default, nilai AUTO-INCREMENT dimulai dari 1, dan akan bertambah 1 setiap kali record baru dimasukkan.

9. Tentukan Query dan Subquery.

Query adalah kode yang ditulis untuk meminta atau mengambil data dari tabel database atau beberapa tabel. Kueri dapat berupa kueri tindakan atau kueri pemilihan.

Subquery, di sisi lain, adalah kueri dalam kueri lain. Ini juga dikenal sebagai kueri dalam atau kueri bersarang. Subquery digunakan untuk membatasi atau meningkatkan data yang harus ditanyakan oleh kueri utama, sehingga membatasi atau meningkatkan hasil kueri utama. Biasanya, subquery dieksekusi terlebih dahulu, dan hasilnya diteruskan ke kueri utama.

Ada dua jenis subquery:

  • Subquery berkorelasi – Subquery ini bukan kueri independen. Namun, itu bisa merujuk ke kolom dalam tabel yang terdaftar di FROM dari kueri utama.
  • Subquery yang tidak berkorelasi – Ini adalah kueri independen, dan outputnya diganti dengan kueri utama.

10. Tentukan Pemicu.

Pemicu adalah kode atau program yang disimpan yang dijalankan secara otomatis ketika peristiwa seperti pernyataan INSERT, DELETE, UPDATE(DML) terjadi. Mereka juga dapat dieksekusi sebagai respons terhadap Pernyataan definisi data (DDL) dan operasi basis data seperti SERVER ERROR, LOGON, dll. Pemicu membantu menjaga integritas basis data.

11. Menjelaskan peran sifat ACID dalam suatu transaksi.

Properti ACID diikuti untuk menjaga konsistensi dalam database baik sebelum dan sesudah transaksi.

  • Atomicity – Ini mensyaratkan bahwa transaksi harus diselesaikan. Seharusnya tidak dibiarkan di tengah jalan. Jika suatu transaksi gagal, seluruh transaksi akan gagal, dan database akan tetap tidak berubah.
  • Konsistensi – Ini berusaha untuk mempertahankan batasan integritas dengan memvalidasi data yang dimasukkan ke dalam database.
  • Isolasi – Properti ini bertujuan untuk mengontrol konkurensi.
  • Daya tahan – Properti ini memastikan bahwa setelah transaksi selesai, transaksi tetap berkomitmen meskipun ada tantangan yang mungkin datang (misalnya, kehilangan daya, kesalahan internal, dll.).

12. Bedakan antara perintah DELETE dan TRUNCATE.

Perbedaan inti antara perintah DELETE dan TRUNCATE adalah sebagai berikut:

  • Sementara perintah DELETE digunakan untuk menghapus atau menghapus satu atau lebih tabel yang ada, perintah TRUNCATE menghapus semua data dari dalam tabel.
  • DELETE adalah perintah DML, sedangkan TRUNCATE adalah perintah DDL.
  • DELETE memungkinkan Anda untuk menyelesaikan pemicu, tetapi TRUNCATE tidak memungkinkan Anda mengeksekusi dan memicu.
  • Perintah TRUNCATE tidak berfungsi saat batasan kunci asing mereferensikan tabel. Dalam kasus seperti itu, Anda harus menggunakan perintah DELETE.

13. Beri nama subset SQL yang berbeda.

Subset dari SQL meliputi:

  • DDL (Data Definition Language) – Bahasa ini memungkinkan Anda untuk melakukan sejumlah operasi pada database, termasuk perintah SQL seperti objek CREATE, ALTER, dan DELETE.
  • DML (Bahasa Manipulasi Data) – Bahasa ini memungkinkan Anda mengakses dan memanipulasi data dalam database menggunakan perintah seperti INSERT, UPDATE, dan DELETE.
  • DCL (Data Control Language) – Bahasa ini memungkinkan Anda untuk mengontrol akses ke database dengan menggunakan perintah seperti GRANT dan REVOKE.

Baca: 9 Alat Ilmu Data Teratas di tahun 2020

14. Jelaskan Integritas Data.

Integritas data mendefinisikan akurasi, konsistensi, dan keandalan data yang disimpan dalam database. Selain itu, ini membantu menentukan batasan integritas untuk menegakkan aturan bisnis pada data saat dimasukkan ke dalam database atau aplikasi.

Integritas data terdiri dari empat jenis:

  • Integritas baris
  • Integritas kolom
  • Integritas referensial
  • Integritas yang ditentukan pengguna

15. Apa Fungsi yang Ditentukan Pengguna? Sebutkan jenis-jenis Fungsi yang Ditentukan Pengguna.

Fungsi yang ditentukan pengguna adalah fungsi yang ditulis secara khusus untuk menggunakan logika tertentu jika diperlukan. Fungsi-fungsi ini menghilangkan kebutuhan untuk menulis logika yang sama beberapa kali; sebagai gantinya, Anda dapat memanggil atau menjalankan fungsi yang ditentukan pengguna kapan pun diperlukan.

Ada tiga jenis fungsi yang ditentukan pengguna:

  • fungsi skalar.
  • Fungsi bernilai tabel sebaris.
  • Fungsi bernilai multi pernyataan.

16. Definisikan Collation. Sebutkan jenis-jenis sensitivitas pemeriksaan.

Collation mengacu pada kumpulan aturan yang menentukan bagaimana data karakter diurutkan dan dibandingkan. Selain menentukan urutan karakter yang benar untuk mengurutkan data karakter, ini juga menyertakan opsi untuk menentukan sensitivitas huruf besar-kecil, tanda aksen, tipe karakter kana, dan juga lebar karakter.

Berbagai jenis sensitivitas pemeriksaan meliputi:

  • Sensitivitas huruf besar-kecil – Karakter 'A' dan 'a' diperlakukan berbeda.
  • Sensitivitas aksen – Karakter 'a' dan ' a' diperlakukan berbeda.
  • Sensitivitas Kana – Ini memperlakukan karakter Kana Jepang seperti Hiragana dan Katakana secara berbeda.
  • Sensitivitas lebar – Ini memperlakukan karakter bita tunggal (setengah lebar) dan bita ganda (lebar penuh) secara berbeda.

17. Apa yang dimaksud dengan Stored Procedure?

Prosedur tersimpan adalah subrutin (kode SQL) yang digunakan untuk aplikasi yang mengakses RDBMS. Ini mendukung konsep pemrograman modular, artinya Anda dapat membuat prosedur tersimpan satu kali dan menyimpannya serta memanggilnya beberapa kali saat dan saat diperlukan.

Prosedur ini disimpan dalam kamus data database. Keuntungan dari prosedur tersimpan adalah memungkinkan eksekusi kueri yang lebih cepat. Ini tidak hanya mengurangi lalu lintas jaringan tetapi juga memberikan keamanan data yang lebih baik.

Keuntungan lain adalah bahwa prosedur tersimpan dilengkapi dengan fungsionalitas tambahan karena pengguna yang tidak dapat mengakses data secara langsung dapat menggunakan prosedur tersimpan untuk mendapatkan akses.

Namun, ini juga memiliki kelemahan – prosedur tersimpan hanya dapat dijalankan dalam database, biasanya menempati lebih banyak memori di server database.

18. Bedakan antara Tampilan dan Tabel.

Berikut adalah beberapa poin perbedaan antara tampilan dan tabel:

  • Tampilan mengacu pada tabel virtual yang diekstraksi dari database, sedangkan tabel mengacu pada entitas terstruktur yang berisi sejumlah kolom dan baris dalam jumlah tak terbatas.
  • Tampilan tidak dapat menyimpan data sendiri, sedangkan tabel berisi data dan menyimpannya dalam database.
  • Tampilan memungkinkan Anda untuk menanyakan informasi spesifik yang terkandung dalam beberapa tabel berbeda. Namun, tabel menyimpan informasi klien mendasar bersama dengan kasus objek yang dicirikan.

19. Tentukan Tabel Sementara. Bagaimana Anda bisa membuatnya?

Tabel sementara adalah tabel yang memungkinkan Anda untuk menyimpan dan memproses hasil antara. Tabel-tabel ini dapat dihapus secara otomatis ketika tidak lagi digunakan. Tabel sementara berguna untuk situasi di mana Anda perlu menyimpan data sementara.

Sintaks untuk membuat tabel sementara adalah:

BUAT TABEL #nama_tabel();

Kueri di bawah ini akan membuat tabel sementara:

buat tabel #book(b_id int, b_cost int)

Sekarang, kita akan memasukkan catatan.

masukkan ke dalam #nilai buku(1,100)

masukkan ke dalam nilai #book(2.223)

pilih * dari #buku

Pelajari Kursus Pengembangan Perangkat Lunak online dari Universitas top dunia. Dapatkan Program PG Eksekutif, Program Sertifikat Tingkat Lanjut, atau Program Magister untuk mempercepat karier Anda.

Membungkus

Kami berharap panduan pertanyaan dan jawaban wawancara SQL ini akan membantu Anda memperkuat dan memperluas basis pengetahuan SQL Anda.

Jika Anda penasaran untuk belajar tentang SQL, dan lebih lanjut tentang pengembangan tumpukan penuh, lihat Program PG Eksekutif 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, tatap muka dengan mentor industri, 400+ jam pembelajaran dan bantuan pekerjaan dengan perusahaan-perusahaan top.

Diploma PG dalam Pengembangan Perangkat Lunak Tumpukan Penuh

Daftar Sekarang untuk Program PG Eksekutif dalam Pengembangan Tumpukan Penuh