AccessTr.neT

Tam Versiyon: koşullu mükerrer kayıt silme sorgusu
Şu anda arşiv modunu görüntülemektesiniz. Tam versiyonu görüntülemek için buraya tıklayınız.
Sayfalar: 1 2 3
MErhaba arkadaşlar ekteki veritabanımın orijinalinde yaklaşık 5bin kayıt mevcut ve bunların hemen hemen 1/4 ü mükerrer. O yüzden bunları kod yoluyla silmem gerekiyor.
Fakat sorunum şu, mükerrer kayıtların bazılarına başka bir tablodan bağlı veriler mevcut. 
Bu yüzden o verilerin değil de diğer mükerrer kayıtların silinmesi gerekiyor. Bağlı olan iki tabloyu birleştiren bir sorgu oluşturdum. "sorgu1" de işlem yapacağımız malzeme mevcut görünüyor.

Sonuç olarak yaratmak istediğim silme sorgusunda;
fat_tedarikci , fat_no , fat_adetmt alanlarının üçünün birden aynı olduğu kayıtlardan [tofatura_siparisno] alanının boş olduğu kayıtları silmesini,
eğer bu üç alanın da aynı olduğu mükerrer kayıtlardan farzı misal 3 tane varken hepsinin [tofatura_siparisno] alanı boş ise 1 tanesi hariç hepsinin silinmesini istiyorum.

ÖRnek olarak;
     fat_tedarikçi    fat_no    fat_adetmt    tofatura_siparisno
1-  1000              32532        3000             MK125
2-  1000              32532        3000           
3-  1000              32532        3000 
4- 2000               45455        2000            
5- 2000               45455        2000
6- 2000               45455        2000

sorguyu çalıştırığımızda 1. kayıt ve 4.kaydın korunmasını, gerisinin silinmesini istiyorum.
Forumda yaptığım aramada, Ozan Bey'in silme sorgusunu buldum. Fakat uyarlayamadım.
https://accesstr.net/konu-mukerrer-kayit...rgusu.html
Basit bir eklemeyle düzeltebileceksem denerim.

İlginiz için teşekkür ederim.
(29/02/2016, 19:03)mehmetb84 yazdı: [ -> ]fat_tedarikci , fat_no , fat_adetmt alanlarının üçünün birden aynı olduğu kayıtlardan [tofatura_siparisno] alanının boş olduğu kayıtları silmesini,
eğer bu üç alanın da aynı olduğu mükerrer kayıtlardan farzı misal 3 tane varken hepsinin [tofatura_siparisno] alanı boş ise 1 tanesi hariç hepsinin silinmesini istiyorum.


Şeklinde yazmışsınız. 1. ve 4. kayıtlar kalacak. Ancak örneklendirmenizde 1. kayıtta tofatura_siparisno alanında MK125 verisi var. Örneklendirmeye göre 3,5 ve 6. kaydın silinmesi lazım.

Ayrıca, eklediğiniz örnek uygulamada belirttiğiniz kriterlere göre hiçbir kaydın silinmemesi gerekiyor. Çünkü fat_tedarikci , fat_no , fat_adetmt alanları aynı olup tofatura_siparisno alanının boş olduğu kayıt bulunmamakta.
fat_tedarikçi    fat_no    fat_adetmt. sip.no
1-  1000              32532        3000       MK125
2-  1000              32532        3000           
3-  1000              32532        3000 
4- 2000               45455        2000            
5- 2000               45455        2000
6- 2000               45455        2000

sutunlar sigimadigi icin Html otomatik kaydirmis sanirim. siparisnonun basindaki tofatura bolumunu sildim simdi duzeldi sanirim.

Fakat telefondan yine kaymış görünüyor.
sütün başları fat_tedarikçi / fat_no / fat_adetmt / tofatura_siparisno
sadece sipariş no alanının altında kayıt var diğerlerinin yok.
[Resim: do.php?img=6031]
Eklediğiniz örnek uygulamada toplafaturalar isimli tablodaki hangi numaralı satırların silinmesi gerekiyor?
sorgu2 olarak güncellediğim örnekte;
5623
5625
5626
5628
5630 nolu (fat_otomatik alanı kayıtları) kayıtların silinmesini istiyorum.
bu arada toplafaturalar tablosunda degil t_faturalar tablosundaki satirlarin silinmesini istiyorum.
Sayfalar: 1 2 3