SQL Geliştiricileri için Mülakat Soruları: Ortak SQL Röportajı Soru-Cevap- Bölüm 3

SQL'de ne tür joins kullandınız ve bunların nasıl çalıştığını açıkladınız mı?

Cevap:

  • INNER JOIN: Her iki tablodan eşleşen verileri içeren satırları döndürür.
  • LEFT JOIN: Sol tablodaki tüm satırları ve sağ tablodaki eşleşen satırları döndürür.
  • RIGHT JOIN: Sağ tablodaki tüm satırları ve sol tablodaki eşleşen satırları döndürür.
  • FULL JOIN: Eşleşmeyen satırlar da dahil olmak üzere her iki tablodaki tüm satırları döndürür.

 

SQL'deki ACID kavramlarını ve bunların işlem yönetimindeki rolünü açıklamak

Cevap: ASİT, anlamına gelir Atomicity, Consistency, Isolation, Durability. Bunlar, SQL'de işlem yönetimindeki temel özelliklerdir:

  • Atomicity bir işlemin tamamen işlenmesini veya hiç işlenmemesini sağlar.
  • Consistency verilerin tanımlanmış kurallara, kısıtlamalara ve koşullara uyması gerektiğini garanti eder.
  • Isolation eşzamanlı işlemlerin birbirini etkilememesini sağlar.
  • Durability bir işlem tamamlandıktan sonra veritabanındaki değişikliklerin güvenli ve kalıcı olarak kaydedilmesini sağlar.

 

ROW_NUMBER(), RANK(), DENSE_RANK() SQL'deki işlevler arasındaki fark nedir ?

Yanıt: ROW_NUMBER(), RANK(), DENSE_RANK() hepsi bir sorgu sonucundaki satırları numaralandırmak için kullanılır, ancak aşağıdaki farkları vardır:

  • ROW_NUMBER(): Tekrarları dikkate almadan, sorgu sonucundaki satırlara sürekli sayılar atar.
  • RANK(): Sorgu sonucundaki satırlara numara atar ve eşitlik olması durumunda bir sonraki numarayı atlar.
  • DENSE_RANK(): Sorgu sonucunda satırlara numara atar ve beraberlik durumunda bir sonraki numarayı atlamaz.

 

window functions SQL'de nasıl kullanılır ve bir örnek verin.

Cevap: Window functions ana sorgunun sonucunu değiştirmeden bir dizi ilgili satır üzerinde hesaplama yapılmasına izin verir. Örneğin, çalışan toplamları hesaplamak veya bir sonuç kümesindeki en üstteki N satırı almak için pencere işlevlerini kullanabiliriz.

SELECT ProductID, UnitPrice,   
       SUM(UnitPrice) OVER(ORDER BY ProductID) AS RunningTotal  
FROM Products;  

 

Desen eşleştirme için SQL'de normal ifadeler nasıl kullanılır?

Cevap: SQL'deki düzenli ifadeler, karmaşık metin kalıbı aramaları için kullanılır. Genellikle(Oracle'ta) veya (PostgreSQL'de) LIKE gibi operatör veya işlevlerle birlikte kullanılırlar. REGEXP_LIKE REGEXP_MATCHES

SELECT * FROM Employees WHERE LastName LIKE '%son%';

 

JSON verileriyle çalışmak için SQL'de JSON işlevleri nasıl kullanılır?

Cevap: SQL'deki JSON işlevleri, veritabanında JSON formatındaki verilerin sorgulanmasına, eklenmesine, güncellenmesine ve silinmesine izin verir.

Örneğin, JSON özelliklerini değiştirmek için JSON_VALUE, JSON_QUERY, JSON_MODIFY(SQL Server'da) gibi işlevleri veya ->, ->>, #>, #>> vb.(PostgreSQL'de) gibi operatörleri kullanabiliriz.

SELECT JSON_VALUE(CustomerInfo, '$.Name') AS CustomerName  
FROM Customers;  

 

SQL sorgu optimizasyonu ve veritabanı performans ayarı için gelişmiş teknikler

Yanıt: SQL sorgularını ve veritabanı performansını optimize etmek için aşağıdaki gibi teknikleri kullanabiliriz:

  • Sık sorgulanan sütunlar için dizinleri kullanma.
  • Verimli veri alma için iyileştirme JOIN ve WHERE maddeler.
  • Gerektiğinde pencere fonksiyonlarını ve sayfalandırmayı kullanmak.
  • SELECT Yalnızca gerekli sütunları almak için * kullanmaktan kaçının .
  • Bazı durumlarda sorgu ipuçlarını kullanma.
  • Veri normalizasyonunun sağlanması ve kopyaların kaldırılması.
  • Veritabanını izlemek ve ince ayar yapmak için performans izleme araçlarını kullanma.

 

SQl'de SET işlemlerin nasıl kullanılacağını açıklayın (UNION, INTERSECT, EXCEPT)

Yanıt: SET işlemler, (UNION, INTERSECT, EXCEPT) farklı sorguların sonuç kümelerini birleştirmek ve değiştirmek için kullanılır.

  • UNION: İki veya daha fazla sorgunun sonuçlarını tek bir veri kümesinde birleştirir ve yinelenenleri kaldırır.
  • INTERSECT: Her iki sorgu sonuç kümesinde görünen satırları döndürür.
  • EXCEPT: İlk sorgu sonuç kümesinde görünen ancak ikincisinde olmayan satırları döndürür.

 

LEAD, LAG, FIRST_VALUE, LAST_VALUE SQL'deki gibi sorgu işlevleri nasıl kullanılır?

Cevap: Gibi sorgulama fonksiyonları, LEAD, LAG, FIRST_VALUE, LAST_VALUE aynı sorgu sonucunda ilgili satırlardan değer almak için kullanılır.

  • LEAD: Sorgu sonucundaki bir sonraki satırdan bir sütunun değerini alır.
  • LAG: Sorgu sonucundaki bir önceki satırdan bir sütunun değerini alır.
  • FIRST_VALUE: Sorgu sonucundaki bir sütunun ilk değerini alır.
  • LAST_VALUE: Sorgu sonucundaki bir sütunun son değerini alır.