Skip to main content

AccessTr.neT


Sql İç İçe Sorgu

Sql İç İçe Sorgu

Çözüldü #1
Merhabalar

Elimde 3 Başlık Var

Kesinti_No - Bildirim_Baslangic_Zamani - Bildirim_Kaynagi

Benden ilk istenen Kesinti_No'yu Gruplayıp Bildirim_Kaynagi = MRC olan ve Bildirim_Baslangic_Zamani min ve max verileri getirmek.
Bu sorguyu yazdım şimdi de Bildirim_Kaynagi = SRC olanların min - max değerlerini getirmemi ve en son da da Bildirim_Kaynagi = SRC ve MRC olanları saydırmam gerekiyor.
Bu konu hakkında yardımcı olabilir misiniz?

Aşağıdaki Koduma nasıl bi ekleme yapmam gerekiyor.

SELECT Kesinti_No, min(Bildirim_Baslangic_Zamani), max(Bildirim_Baslangic_Zamani)
FROM Bagli_Bildirimler
WHERE Bildirim_Kaynagi = "MRC"
GROUP BY Kesinti_No
Cevapla
#2
SELECT Kesinti_No, min(Bildirim_Baslangic_Zamani), max(Bildirim_Baslangic_Zamani)
FROM Bagli_Bildirimler
WHERE Bildirim_Kaynagi = "MRC"
GROUP BY Kesinti_No

SELECT Kesinti_No, min(Bildirim_Baslangic_Zamani), max(Bildirim_Baslangic_Zamani)
FROM Bagli_Bildirimler
WHERE Bildirim_Kaynagi = "SRC"
GROUP BY Kesinti_No

SELECT Kesinti_No, count(Kesinti_No) AS MRC_Sayi
FROM Bagli_Bildirimler
WHERE Bildirim_Kaynagi = "MRC"
GROUP BY Kesinti_No

SELECT Kesinti_No, count(Kesinti_No) AS SRC_Sayi
FROM Bagli_Bildirimler
WHERE Bildirim_Kaynagi = "SRC"
GROUP BY Kesinti_No

Yukarıdaki sorguları tek sorguyla yapabilir miyim?
Cevapla
#3
??????????
Cevapla
#4
union query araştırın
Murat YANDEMİR ( PyramiD YAZILIM Uluslar Arası Nakliye Programları )
Bilgisayar Programcısı (1989'dan beri)

+rep Yollar biter Access bitmez. +rep
Cevapla
#5
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.
Cevapla
#6
Kod:
SELECT Kesinti_No, min(Bildirim_Baslangic_Zamani), max(Bildirim_Baslangic_Zamani)
FROM Bagli_Bildirimler
WHERE Bildirim_Kaynagi = "MRC"
GROUP BY Kesinti_No
(SELECT Kesinti_No, min(Bildirim_Baslangic_Zamani), max(Bildirim_Baslangic_Zamani)
FROM Bagli_Bildirimler
WHERE Bildirim_Kaynagi = "SRC"
GROUP BY Kesinti_No)
.
.
.

bu mantıkla denermisiniz
Murat YANDEMİR ( PyramiD YAZILIM Uluslar Arası Nakliye Programları )
Bilgisayar Programcısı (1989'dan beri)

+rep Yollar biter Access bitmez. +rep
Cevapla

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

Yorum yapmak için üye olmanız gerekiyor

ya da
Task