Çift tablodan kayıt birleştirme sorunu

Delphi'de kod yazma ile ilgili sorularınızı bu foruma yazabilirsiniz.
Cevapla
ikut

Çift tablodan kayıt birleştirme sorunu

Mesaj gönderen ikut »

Arkadaşlar merhaba

Sanal olarak tablo yapısını anlatıp örneklemem lazım.. (field alanları italyanca ve heribi 200 den fazla field var o yüzden)

A detablosun da kayıtlar var. B tablosu ile bu tablodaki kayıtlardaki değişiklilerin log kaydını tutuyor. hangi field kaç mış kaç olmuş gibi. ancak birden fazla değişiklikte olabilir yada hiç değişmemiş olabilir.

Şimdi tablo yapısı sorunlu olduğundan son güncelleyen kişi veya son tarih gibi bilgileri B tablosundan almam gerekiyor.

A tablosunda
F1,f2,f3,f4,f5 gibi alanlar var diyelim. B tablosun da ise G1,g2,g3,g4,g5

f1 ve g1 sip no olarak join edeceğiz ve g2,g3 te son değişiklik ve kullanıcı adı olsa nasıl bir sql yazmam gerek.

Şimdi sql in yapısını mantıken biliyorum

A dan kayıtları seçip B den ise ilgili kaydın varşa eşini bulmak için tarihe göre ters sıralama yapılmış kayıtlardan en üsttekini almam gerek.

Ama nasıl ?
Kullanıcı avatarı
conari
Üye
Mesajlar: 2102
Kayıt: 27 Nis 2006 03:10
Konum: İstanbul & Gebze Karışık

Mesaj gönderen conari »

Union desteği varmı bilemiyorum veritabanı nedir?

Kod: Tümünü seç

select TabloA.* , TABLOB.G1, TABLOB.G2, TABLOB.G3, TABLOB.G4 from TabloA INNER JOIN TABLOB ON (TABLOA.F1=TABLOB.G1)
WHERE TABLOA.F1='XXXXXXXX' AND MAX(TABLOB.TARIHALANIM) 
Bir kelimenin anlamını öğretsen bile yeter..
ResimResim
ikut

Mesaj gönderen ikut »

conari yazdı:Union desteği varmı bilemiyorum veritabanı nedir?

Kod: Tümünü seç

select TabloA.* , TABLOB.G1, TABLOB.G2, TABLOB.G3, TABLOB.G4 from TabloA INNER JOIN TABLOB ON (TABLOA.F1=TABLOB.G1)
WHERE TABLOA.F1='XXXXXXXX' AND MAX(TABLOB.TARIHALANIM) 
db2 ama os400 üzerinde. bazı komutlar tuhaf şekilde çalışmıyor.. ben bunu bir deneyeyim
Cevapla