İki tablonun birleştirilmesi

Delphi'de kod yazma ile ilgili sorularınızı bu foruma yazabilirsiniz.
Cevapla
Ertuğrul2025
Üye
Mesajlar: 30
Kayıt: 08 Oca 2025 10:35

İki tablonun birleştirilmesi

Mesaj gönderen Ertuğrul2025 »

Hayırlı günler. KAYITLAR ve SOZLESME isimli iki tane tablom var.
Bunları birleştirip çalıştırdığımda sorguda istediğim kayıtları değilde kayıtları tekrarlayarak astronomik fazla kayıt gösteriyor.
Sorgumdamı bir yanlışlık var veya tablolarımı hatalı oluşturdum acaba anlayanadım. Tablolarımı SQL Server 2012 ile oluşturdum.
Bu konıda bana yardımcı olursanız memnun olurum. Şimdiden çok teşekkür ediyorum.

select KAYITLAR.ID, A1, A2, SOZLESME.S2, S3, S14 from KAYITLAR INNER JOIN SOZLESME ON KAYITLAR.A1 = SOZLESME.S1
Kullanıcı avatarı
mussimsek
Admin
Mesajlar: 7601
Kayıt: 10 Haz 2003 12:26
Konum: İstanbul
İletişim:

Re: İki tablonun birleştirilmesi

Mesaj gönderen mussimsek »

join'lerde kartezyen çarpım yapar. Burada Kayıtlar tablosunda A1 alanı, Sözleşme tablosundaki S1 alanına eşit olan tüm kayıtları eşleştirip, getirir.

Tabloların içeriğini bilmeden yorum yapmak zor ancak bu tarz durumlarda, en güzeli gelen kayıtlara bakıp, hangisini istemiyorsanız elemektir. where şartı ekleyip, gelmesini istemediğiniz tüm kayıtları eleyin.

Kolay gelsin.
Ertuğrul2025
Üye
Mesajlar: 30
Kayıt: 08 Oca 2025 10:35

Re: İki tablonun birleştirilmesi

Mesaj gönderen Ertuğrul2025 »

mussimsek yazdı: 08 Nis 2025 05:52 join'lerde kartezyen çarpım yapar. Burada Kayıtlar tablosunda A1 alanı, Sözleşme tablosundaki S1 alanına eşit olan tüm kayıtları eşleştirip, getirir.

Tabloların içeriğini bilmeden yorum yapmak zor ancak bu tarz durumlarda, en güzeli gelen kayıtlara bakıp, hangisini 1istemiyorsanız elemektir. where şartı ekleyip, gelmesini istemediğiniz tüm kayıtları eleyin.

Kolay gelsin.
Hocam A1 ve S1 sütunları metin ayarlı ve 48.000 kayıt var. Birleştirdiğimde 500.000 kaydı geçiyor. Mükerrer satır yapıyor. En sozunda ben sorguyu durduruyorum.
Kullanıcı avatarı
freeman35
Admin
Mesajlar: 2380
Kayıt: 12 Haz 2003 04:05
Konum: merkez camii yanı

Re: İki tablonun birleştirilmesi

Mesaj gönderen freeman35 »

Ertuğrul2025 yazdı: 08 Nis 2025 03:51 select KAYITLAR.ID, A1, A2, SOZLESME.S2, S3, S14
from KAYITLAR
INNER JOIN SOZLESME ON KAYITLAR.A1 = SOZLESME.S1
SQL string inin düzenli yazmanı öneririm. A1, A2 hangi tablonın? başında alias yada tablo isimleri yok. ayrıca formatlı şekilde yazarsan hatayı bulman dahada kolay olacaktır.
"ON KAYITLAR.A1 = SOZLESME.S1" koşul doğru yazılış ama field içeriği nedir nasıl kurguladın bilemeyiz.
join kullanımı ile ilgili 1-2 makale okumanda fayda olacaktır.
ZAGOR TENAY TÜRK'tür... TÜRK kalacak...
Zoru başarırım, İmkansız zaman alır
FreeMan 35.5

Soru sormaya üşenmiyorsan, sorunun çözümünü yazmaya da üşenme !!!
Ertuğrul2025
Üye
Mesajlar: 30
Kayıt: 08 Oca 2025 10:35

Re: İki tablonun birleştirilmesi

Mesaj gönderen Ertuğrul2025 »

freeman35 yazdı: 09 Nis 2025 09:56
Ertuğrul2025 yazdı: 08 Nis 2025 03:51 select KAYITLAR.ID, A1, A2, SOZLESME.S2, S3, S14
from KAYITLAR
INNER JOIN SOZLESME ON KAYITLAR.A1 = SOZLESME.S1
SQL string inin düzenli yazmanı öneririm. A1, A2 hangi tablonın? başında alias yada tablo isimleri yok. ayrıca formatlı şekilde yazarsan hatayı bulman dahada kolay olacaktır.
"ON KAYITLAR.A1 = SOZLESME.S1" koşul doğru yazılış ama field içeriği nedir nasıl kurguladın bilemeyiz.
join kullanımı ile ilgili 1-2 makale okumanda fayda olacaktır.
Teşekkür ederim hocam.
Cevapla