Alt sorgular SQL içerisinde kullanılan SELECT sorgusunun özel bir türüdür.
Veri tabanı tasarımı sırasında verilerin tekrarını önlemek amacıyla nesnelere parçalara ayrılır.
Ayrılan parçalar INNER Join, LEFT Join, RIGHT Join kullanılarak birleştirilerek istenilen veriye ulaşılabilir.
Alt sorgularda benzer şekilde verileri birleştirmek için kullanılır.
İç içe sorgular genellikle bir alt ve üst sorgudan oluşur.
Alt sorgu sınırı yoktur.
Alt sorgu ile bir tablodaki değer elde edilir ve bu değer üst sorguda kullanılır.
Alt sorguların daha iyi anlaşılabilmesi için bir örnek vermek gerekirse; Veri tabının da kategoriler ve urunler olmak üzere iki tablo olduğunu varsayalım.
Alt sorguları kullanarak urunler tablosunda bulunan Bilgisayar ürünlerini listeleyelim.
Bu işlem için ilk olarak alt sorgu ile kategoriler tablosunda Bilgisayar kaydına ait sıra numarasını (ID) alıp daha sonra bu sıra numarasını üst sorguda kullanabiliriz.
Alt sorgu
Üst sorgu
Alt ve üst sorguyu birleştirelim.
Not: Alt sorgunun sadece bir değer döndürdüğüne dikkat edilmedilir.
Alt sorgu birden fazla değer döndürürse IN anahtar kelimesi kullanılır.
Alt sorguları kullanarak bir tablodaki ortalama değerden fazla veya az, en büyük değer, en küçük değer vb. değerler alınarak kullanılır.
Örneğin; Bir ders ortalamasından yüksek alan öğrencileri listelemek, bir firmada çalışan Mühendis ve Pazarlamacı listelemek için kullanılabilir.
Hayırlı günler dilerim.
Veri tabanı tasarımı sırasında verilerin tekrarını önlemek amacıyla nesnelere parçalara ayrılır.
Ayrılan parçalar INNER Join, LEFT Join, RIGHT Join kullanılarak birleştirilerek istenilen veriye ulaşılabilir.
Alt sorgularda benzer şekilde verileri birleştirmek için kullanılır.
İç içe sorgular genellikle bir alt ve üst sorgudan oluşur.
Alt sorgu sınırı yoktur.
Alt sorgu ile bir tablodaki değer elde edilir ve bu değer üst sorguda kullanılır.
Alt sorguların daha iyi anlaşılabilmesi için bir örnek vermek gerekirse; Veri tabının da kategoriler ve urunler olmak üzere iki tablo olduğunu varsayalım.
Alt sorguları kullanarak urunler tablosunda bulunan Bilgisayar ürünlerini listeleyelim.
Bu işlem için ilk olarak alt sorgu ile kategoriler tablosunda Bilgisayar kaydına ait sıra numarasını (ID) alıp daha sonra bu sıra numarasını üst sorguda kullanabiliriz.
Alt sorgu
SQL:
SELECT kat_id FROM kategoriler WHERE kat_adi = 'Bilgisayar'
SQL:
SELECT * FROM urunler WHERE kat_id = ( Alt sorgu )
SQL:
SELECT * FROM urunler WHERE kat_id = (SELECT kat_id FROM kategoriler WHERE kat_adi = 'Bilgisayar')
Alt sorgu birden fazla değer döndürürse IN anahtar kelimesi kullanılır.
Alt sorguları kullanarak bir tablodaki ortalama değerden fazla veya az, en büyük değer, en küçük değer vb. değerler alınarak kullanılır.
Örneğin; Bir ders ortalamasından yüksek alan öğrencileri listelemek, bir firmada çalışan Mühendis ve Pazarlamacı listelemek için kullanılabilir.
Hayırlı günler dilerim.