Skip to main content

AccessTr.neT


koşullu mükerrer kayıt silme sorgusu

koşullu mükerrer kayıt silme sorgusu

Çözüldü #1
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.
.rar sorgu2.rar (Dosya Boyutu: 21,37 KB | İndirme Sayısı: 17)
Son Düzenleme: 01/03/2016, 14:11, Düzenleyen: mehmetb84.
Cevapla
#2
(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.
Cevapla
#3
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.
Son Düzenleme: 01/03/2016, 10:56, Düzenleyen: mehmetb84.
Cevapla
#4
[Resim: do.php?img=6031]
Cevapla
#5
Eklediğiniz örnek uygulamada toplafaturalar isimli tablodaki hangi numaralı satırların silinmesi gerekiyor?
Cevapla
#6
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.
Son Düzenleme: 01/03/2016, 22:21, Düzenleyen: mehmetb84.
Cevapla

Bir hesap oluşturun veya yorum yapmak için giriş yapın

Yorum yapmak için üye olmanız gerekiyor

ya da