• DİKKAT

    DOSYA İndirmek/Yüklemek için ÜCRETLİ ALTIN ÜYELİK Gereklidir!
    Altın Üyelik Hakkında Bilgi

access aynı değere sahip satırları kaldırmak

Katılım
7 Eylül 2008
Mesajlar
76
Excel Vers. ve Dili
yok
access aynı değere sahip satırları kaldırmak için ne yapmalıyım
Yaklaşık 8milyon satır her satırdada 7 sütün var
Aynı satırları nasıl silebilirim.
 
Merhaba..

Sorgu ya da Visual Basic editörü kullanarak bu fazla kayıtları -"her satırdada 7 sütün var" kısmını anlamasam da- kriterler kullanarak sildirebilirsiniz.. Aynı yapıda ve daha az kayıt içeren bir örnek ekleyebilirseniz daha net destek alabilirsiniz..
 
Örnekde 2 ile 4 satır daki veriler aynı.Benim istediğim aynı olan satırlardan birinin kalması diğerinin silinmesi.
 

Ekli dosyalar

ID değerinin diğer tablolarla vs. işlemi-ilişkisi yoksa fakk etmeyecektir gerçi ama yine de sormakta fayda var..:

Hangisi kalsın.. İlk girilen mi, son mu?
 
Kod:
DELETE [Alan1] & [Alan2] & [Alan3] & [Alan4] & [Alan5] & [Alan6] & [Alan7] & [Alan8] & [Alan9] & [Alan10] & [Alan11] AS alan, 
(select count(kimlik)  from tablo1 where [Alan1] & [Alan2] & [Alan3] & [Alan4] & [Alan5] & [Alan6] & [Alan7] & [Alan8] & 
                                                                     [Alan9] & [Alan10] & [Alan11]=trz.[Alan1] & [Alan2] & [Alan3] & [Alan4] & [Alan5] & 
                                                                      [Alan6] & [Alan7] & [Alan8] & [Alan9] & [Alan10] & [Alan11]) AS say, trz.Kimlik
FROM Tablo1 AS trz
WHERE ((((
                  select count(kimlik)  from tablo1 where [Alan1] & [Alan2] & [Alan3] & [Alan4] & [Alan5] & [Alan6] & [Alan7] & [Alan8] & 
                                                                                       [Alan9] & [Alan10] & [Alan11]=trz.[Alan1] & [Alan2] & [Alan3] & [Alan4] & 
                                                                                        [Alan5] & [Alan6] & [Alan7] & [Alan8] & [Alan9] & [Alan10] & [Alan11]))>1) 
AND ((
trz.Kimlik) Not In (
                                select top 1 kimlik from tablo1 where [Alan1] & [Alan2] & [Alan3] & [Alan4] & [Alan5] & [Alan6] & [Alan7] & [Alan8] & 
                                                                                                 [Alan9] & [Alan10] & [Alan11]=trz.[Alan1] & trz.[Alan2] & trz.[Alan3] & trz.[Alan4] & 
                                                                                                  trz.[Alan5] & trz.[Alan6] & trz.[Alan7] & trz.[Alan8] & trz.[Alan9] & trz.[Alan10] & trz.[Alan11])))

Boş bir sorgu sayfası açın ve SQL görünümüne geçin.. Yukarıdaki sorguyu o sayfay yapıştırın ve sorguyu çalıştırın.. Aynı alan değerlerine sahip bir veya birden fazla olan kayıtların sadece ilk girilen olanını bırakır diğerlerini veritabanından siler..

Not 1: Uygulamadan önce istediğinizin bu olduğundan emin olun ve veritabınınızın bir yedeğini alın..
Not 2: Son girilen kalsın derseniz bildirin geliştirelim..
 
İlgin için teşekkür ederim ama

alan say Kimlik
elma5kuruşadanateklifsatımalımdevirverkadısebepneden 2 4

sonuç verdi
Rica etsem verdiğim örneğe ekleyip gönderebilirmisin?
 
Doğru sonuç vermiş.. ;) Sorguyu kaydedin ve çalıştırın..
 
Sayın Taruz bey
Bendeki verilerle deneme fırsatını yeni buldum.Şöyle bir problem var.Sorguyu çalıştırıyorum ama sorgulama başlıyor fakat bir türlü sonuçlanmıyor yaklaşık 3 saattir sorgulama çalışmaktadır. Bu verilerin çokluğundanmı kaynaklanıyor?(8milyon satır her satırdada 11 bölüm var dosya boyutu 1.05gb)
 
Sayın ayder12.. Bu kadar kayıt için beklemek normal.. :( Bu işlemi bir kereye mahsus yapacaksınız birşey diyemem ama sürekli olarak yapacağınız işlem buysa access veritabanı kullanmayın derim.. Basit 2 kriterli sorguyu bile bekleyerek görüntüleyebilirsiniz çünkü..
 
Sql server kullanabilirsiniz.. İşlem hızı tatmin edecektir..
 
SQL server 2008 bilgisayarıma kurdum
bendeki access verilerini nasıl sql server içine atabilirim
 
Geri
Üst