Skip to main content

AccessTr.neT


Tablolardaki Son Kayıtları Sorguda Birleştirmek

Tablolardaki Son Kayıtları Sorguda Birleştirmek

Çözüldü #1
Herkese iyi günler, kolay gelsin

Benim şöyle bir sorunum var; Personelin bilgilerini takip amacıyla bir veritabanı oluşturdum. Personelin değişmeyecek bilgilerini (TC,Ad,Soyad) bir tabloda, değişebilecek olan diğer bilgilerini (adres,telefon,maaş,işe giriş/çıkış,izin,rapor vb....) başka ayrı ayrı tablolarda depoluyorum. Personel_Kok tablosundaki kayıtlar hiç bir zaman yinelenmiyor, fakat diğer tablodakiler değiştikçe yeni kayıt açılıyor (Geçmişe dönük bilgilerinin kaybetmemek için). Personel bilgilerinin son halini görmek için bir sorgu oluşturdum. Bu sorguda Personel_Kok tablosuna kayıtlı tüm personeller ile diğer tablolarda bu personel hakkında kayıt edilmiş en son verileri görmek istiyorum fakat yapamadım. LAST, TOP 1 kullanmaya çalıştım işin içinden çıkamadım.

Acaba yardımcı olabilir misiniz?
.rar Hesap.rar (Dosya Boyutu: 179,26 KB | İndirme Sayısı: 5)
Cevapla
#2
grup by fonksiyonunu kullanmayı denediniz mi?
SELECT T_10100_Personel_Kok.PerID, T_10100_Personel_Kok.PerTC, [PerAdi] & " " & [PerSoyadi] AS AdiSoyadi, Last(T_10810_UnvanTipi.Unvan) AS SonUnvan, Last(T_10300_Personel_IseGirisCikis.IseGirisTarihi) AS SonIseGirisTarihi, Last(T_10300_Personel_IseGirisCikis.IstenCikisTarihi) AS SonIstenCikisTarihi, Last(T_10300_Personel_IseGirisCikis.PerGirisCikisID) AS SonPerGirisCikisID
FROM T_10810_UnvanTipi INNER JOIN ((T_10100_Personel_Kok INNER JOIN T_10300_Personel_IseGirisCikis ON T_10100_Personel_Kok.PerID = T_10300_Personel_IseGirisCikis.Per_ID) INNER JOIN T_10800_Personel_UnvanBilgileri ON T_10100_Personel_Kok.PerID = T_10800_Personel_UnvanBilgileri.Per_ID) ON T_10810_UnvanTipi.UnvanID = T_10800_Personel_UnvanBilgileri.Unvan_ID
GROUP BY T_10100_Personel_Kok.PerID, T_10100_Personel_Kok.PerTC, [PerAdi] & " " & [PerSoyadi], T_10100_Personel_Kok.Silindi
HAVING (((T_10100_Personel_Kok.Silindi)=False));
Cevapla
#3
Sayın Berduş çok teşkkür ederim aslında aynısını yapmıştım sürekli hata veriyordu ama sizin kodu incelediğimde sanırım noktalama işaretlerini yanlış yerlere koymuşum
Cevapla

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

Yorum yapmak için üye olmanız gerekiyor

ya da
Task