Veri Süzme İşlemi

Diğer veritabanları ve SQL komutlarıyla ilgli sorularınızı sorabilirsiniz. Delphi tarafındaki sorularınızı lütfen Programlama forumunda sorunuz.
Cevapla
Kullanıcı avatarı
vahapburhan
Üye
Mesajlar: 28
Kayıt: 24 Tem 2004 11:42
Konum: Elazığ
İletişim:

Veri Süzme İşlemi

Mesaj gönderen vahapburhan »

Herkese merhabalar.

Aslında soracağım soru basit ama paradox veri tabanıyla epeydir uğraşmadığım için ilk etapta çözemedim.

Veri tabanımda kişiler ve adreslerini tutuyorum.Örneğin

SECMENNO ADI SOYADI CADDEADI KAPINO DAIRENO
AL88066386O ZEKİ YALNIZ YILDIRIM MAH. 15 6
SV65660051Y SARİYE YALNIZ YILDIRIM MAH. 15 6
ZV65660051Y MUSTAFA YALNIZ YILDIRIM MAH. 15 6

Yapmak istediğim veri tabanında bu şekilde tutulmış kayıtlardan aynı adreste oturan random sadece bir kişiyi getirmesi.Hangisini getirmesi çokta önemli değil önemli olan aynı kapı ve daire numarasına yani aynı evde oturan sadece 1 kayıt getirmesi.

Bunun için ilçe adının comboxotan seçtirdiğim şöyle bir SQL yazdım:

Kod: Tümünü seç

SELECT max(SECMENNO) as SECMENNO,max(ADI) AS ADI,max(SOYADI) AS SOYADI ,max(CADDEADI) as CADDEADI, DAIRENO,KAPINO FROM vt'+
      ' WHERE ADRESILCEADI="'+suiComboBox1.Text+'" GROUP BY DAIRENO,KAPINO
Bu SQL sonucunda aslında bir dairede oturan bir kayıt getiriyor ama bu defa da şöyle bir sorun oluyor :

Kayıtlardan her bir alanın max değerini aldığım için o alandaki en büyük değeri alıyor. Yani üstteki 3 kayıtlardan her bir alanın en büyük değerini alarak karma bir sonuç dönderiyor. Örneğin SeçmenNo alanı için en büyük olan ZV65660051Y olanı, Ad alanı için ZEKİ ismini alıyor ve bu olay diğer alanalr içinde devam ederk SQL sonuç olarak:

SECMENNO ADI SOYADI CADDEADI KAPINO DAIRENO
ZV65660051Y ZEKİ YALNIZ YILDIRIM MAH. 15 6

gibi istemediğim bir sonuç dönderiyor.

Biraz uzun oldu ama umarım meramımı anlatabilmişimdir.

Şimdiden teşekkürler..
Yarın ölecekmiş gibi ahirete, hiç ölmeyecekmiş gibi dünyaya çalış..
Cevapla