Skip to main content

AccessTr.neT


Sql İç İçe Sorgu

Sql İç İçe Sorgu

#7
Bu sorgu bize Tom Hanks’in oynadığı filmleri getirsin ;

Kod:
SELECT Ad
FROM Filmler
WHERE Film_ID IN (
  SELECT Film_ID
  FROM Oyuncu_Film
  WHERE Oyuncu_ID = (
      SELECT Oyuncu_ID
      FROM Oyuncular
      WHERE Ad = "Tom" AND Soyad = "Hanks") )

alıntı olarak şöyle bir örnek var.
Murat YANDEMİR ( PyramiD YAZILIM Uluslar Arası Nakliye Programları )
Bilgisayar Programcısı (1989'dan beri)

+rep Yollar biter Access bitmez. +rep
Son Düzenleme: 10/04/2022, 02:04, Düzenleyen: Yandemir.
Cevapla
#8
(10/04/2022, 02:02)Yandemir yazdı: Bu sorgu bize Tom Hanks’in oynadığı filmleri getirsin ;

Kod:
SELECT Ad
FROM Filmler
WHERE Film_ID IN (
  SELECT Film_ID
  FROM Oyuncu_Film
  WHERE Oyuncu_ID = (
      SELECT Oyuncu_ID
      FROM Oyuncular
      WHERE Ad = "Tom" AND Soyad = "Hanks") )

alıntı olarak şöyle bir örnek var.

Hocam buna uyarlayamadım burda Farklı tablolarda çalışma yapılmış ama ben tek tablo üzerinden çalışma yapmaya çalışıyorum.
Cevapla
#9
Merhaba, Biraz geç bir cevap oldu ama yeni gördüm soruyu. Benzer çözüm arayanlar olursa belki yardımcı olabilir.

Aşağıdaki gibi bir sorgu da kullanılabilir.
Kod:
select Kesinti_No,
       Bildirim_Baslangic_Zamani_MRC_min=(SELECT min(Bildirim_Baslangic_Zamani) FROM Bagli_Bildirimler b WHERE b.Kesinti_No=k.Kesinti_No and Bildirim_Kaynagi = 'MRC'),
       Bildirim_Baslangic_Zamani_MRC_max=(SELECT max(Bildirim_Baslangic_Zamani) FROM Bagli_Bildirimler b WHERE b.Kesinti_No=k.Kesinti_No and Bildirim_Kaynagi = 'MRC'),
       Bildirim_Baslangic_Zamani_SRC_min=(SELECT min(Bildirim_Baslangic_Zamani) FROM Bagli_Bildirimler b WHERE b.Kesinti_No=k.Kesinti_No and Bildirim_Kaynagi = 'SRC'),
       Bildirim_Baslangic_Zamani_SRC_max=(SELECT max(Bildirim_Baslangic_Zamani) FROM Bagli_Bildirimler b WHERE b.Kesinti_No=k.Kesinti_No and Bildirim_Kaynagi = 'SRC'),
       MRC_Sayi=(SELECT COUNT(*) FROM Bagli_Bildirimler b WHERE b.Kesinti_No=k.Kesinti_No and Bildirim_Kaynagi = 'MRC'),
       SRC_Sayi=(SELECT COUNT(*) FROM Bagli_Bildirimler b WHERE b.Kesinti_No=k.Kesinti_No and Bildirim_Kaynagi = 'SRC')
from (SELECT Kesinti_No FROM Bagli_Bildirimler GROUP BY Kesinti_No) k




(09/04/2022, 14:06)footprinting yazdı: Hocam Union la yapamam başlıkların yan yana gelmesi gerekiyor.

Örnek :

Kesinti_No - Bildirim_Baslangic_Zamani_MRC_min - Bildirim_Baslangic_Zamani_MRC_max - Bildirim_Baslangic_Zamani_SRC_min - Bildirim_Baslangic_Zamani_SRC_max - MRC_Sayi - SRC_Sayi

yukarıdaki gibi yan yana getirmem gerekiyor.

Bu işlemi JOIN le yaparım bunun içinde her biri için sorgular oluşturmam gerekiyor. Sorgular oluşturup sistemi yormadan tek sorgu ile yapmak istiyorum.
Bildiğini bilenin arkasından git, bildiğini bilmeyeni uyar, bilmediğini bilene öğret, bilmediğini bilmeyenden kaç.
Konfüçyüs
Cevapla

Bir hesap oluşturun veya yorum yapmak için giriş yapın

Yorum yapmak için üye olmanız gerekiyor

ya da