Skip to main content

AccessTr.neT


gruplandırma son dolu kayıt

gruplandırma son dolu kayıt

#7
Önceki mesaja eklediğim uygulama ile ilgili yorum yazınız. Örnekte hata var mı?
Cevapla
#8
Sayın Akkaya,

Örneğinize kendime uygun ekleme yaptım oldu. Updateicin_UremeSonKayitlar sorgusuna tabloya diye başlayan ilaveler yapmak aklıma hiç gelmemişti. Mükemmel çözüm olmuş beyninize sağlık. Son bir soru benim 8 sorgu sonucu ulaştığım Updateicin_UremeSonKayitlar sorgusunu (son dolu kayıtlar) tek bir sorguyla hallemezmiyiz. Fur
.rar gruplandırma_son.rar (Dosya Boyutu: 24,68 KB | İndirme Sayısı: 7)
Cevapla
#9
Aşağıya yazdığım sorguda boşluk dahil 2646 adet harf var. Bence en sağlıklısı sizin yaptığınız sorgular. Yinede tek sorgu istiyorsan;

Güncelleştirme sorgusu hariç ("srg_tabloguncelle") tüm sorguları sil, 
Yeni sorgu oluştur, 
Sql Göster'i seçip Sql kısmına aşağıdaki kodu yapıştır.

SELECT DişiDölVerimY.DişiDKulakNo, Tohuklamalar_Son.SonÖstrusTarihiDV AS SonTohTar, Gebelikler_Son.SonGebeKalmaTarihiDV AS SonGbTar, Kuruluklar_Son.SonKuruyaÇıkımTarihiDV AS SonKuruTar, Dogurmalar_Son.SonDoğurmaTarihiDV AS SonDgrmaTar, IIf([SonDoğurmaTarihiDV]<[SonÖstrusTarihiDV],[SonÖstrusTarihiDV],"") AS tabloya_sontohtar, IIf([SonDoğurmaTarihiDV]<[SonGebeKalmaTarihiDV],[SonGebeKalmaTarihiDV],"") AS tabloya_songebetar, Dogurmalar_Son.SonDoğurmaTarihiDV AS tabloya_sondgrmtar FROM AnaVerY INNER JOIN ((((DişiDölVerimY LEFT JOIN (SELECT Tohumlamalar_son.DişiDKulakNo, Last(Tohumlamalar_son.ÖstrusTarihiDV) AS SonÖstrusTarihiDV FROM (SELECT DişiDölVerimY.DişiDKulakNo, DişiDölVerimY.ÖstrusTarihiDV FROM DişiDölVerimY WHERE (((DişiDölVerimY.ÖstrusTarihiDV) Is Not Null)))  AS Tohumlamalar_son GROUP BY Tohumlamalar_son.DişiDKulakNo)  AS Tohuklamalar_Son ON DişiDölVerimY.DişiDKulakNo = Tohuklamalar_Son.DişiDKulakNo) LEFT JOIN (SELECT Kuruluklar_Son.DişiDKulakNo, Last(Kuruluklar_Son.KuruyaÇıkımTarihiDV) AS SonKuruyaÇıkımTarihiDV FROM (SELECT DişiDölVerimY.DişiDKulakNo, DişiDölVerimY.KuruyaÇıkımTarihiDV FROM DişiDölVerimY WHERE (((DişiDölVerimY.KuruyaÇıkımTarihiDV) Is Not Null)))  AS Kuruluklar_Son GROUP BY Kuruluklar_Son.DişiDKulakNo)  AS Kuruluklar_Son ON DişiDölVerimY.DişiDKulakNo = Kuruluklar_Son.DişiDKulakNo) LEFT JOIN (SELECT sonDogurmalar.DişiDKulakNo, Last(sonDogurmalar.DoğurmaTarihiDV) AS SonDoğurmaTarihiDV FROM (SELECT DişiDölVerimY.DişiDKulakNo, DişiDölVerimY.DoğurmaTarihiDV FROM DişiDölVerimY WHERE (((DişiDölVerimY.DoğurmaTarihiDV) Is Not Null)))  AS sonDogurmalar GROUP BY sonDogurmalar.DişiDKulakNo)  AS Dogurmalar_Son ON DişiDölVerimY.DişiDKulakNo = Dogurmalar_Son.DişiDKulakNo) LEFT JOIN (SELECT Gebelikler_son.DişiDKulakNo, Last(Gebelikler_son.GebeKalmaTarihiDV) AS SonGebeKalmaTarihiDV FROM (SELECT DişiDölVerimY.DişiDKulakNo, DişiDölVerimY.GebeKalmaTarihiDV FROM DişiDölVerimY WHERE (((DişiDölVerimY.GebeKalmaTarihiDV) Is Not Null)))  AS Gebelikler_son GROUP BY Gebelikler_son.DişiDKulakNo)  AS Gebelikler_Son ON DişiDölVerimY.DişiDKulakNo = Gebelikler_Son.DişiDKulakNo) ON AnaVerY.AnaKulakNo = DişiDölVerimY.DişiDKulakNo GROUP BY DişiDölVerimY.DişiDKulakNo, Tohuklamalar_Son.SonÖstrusTarihiDV, Gebelikler_Son.SonGebeKalmaTarihiDV, Kuruluklar_Son.SonKuruyaÇıkımTarihiDV, IIf([SonDoğurmaTarihiDV]<[SonÖstrusTarihiDV],[SonÖstrusTarihiDV],""), IIf([SonDoğurmaTarihiDV]<[SonGebeKalmaTarihiDV],[SonGebeKalmaTarihiDV],""), Dogurmalar_Son.SonDoğurmaTarihiDV, Dogurmalar_Son.SonDoğurmaTarihiDV, AnaVerY.İşletmedenÇıkımSebebi HAVING (((AnaVerY.İşletmedenÇıkımSebebi)="Halen İşletmede")) ORDER BY DişiDölVerimY.DişiDKulakNo;
Cevapla
#10
Sn Akkaya,
Dediğinizi yaptım. Şahane olmuş. Tabir yerindeyse "Döktürmüşsünüz". Arşivimde çok güzel bir örnek olarak da yerini alacak. Ne diyeyim iyiki varsınız.
Cevapla
#11
Benim karakter sayısından kastım döktürme olayı değil, fazla veride sorgunun çakılma endişesi. Siz eski sorguları silmeyin, köşede dursun. Konu taşınmıştır.
Cevapla

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

Yorum yapmak için üye olmanız gerekiyor

ya da
Task