Mrb;
Üç tedarikçinin toplamından oluşan bir tablom (urunler) var. Her gün tedarikçiden gelen bilgiler bu tablo içinde ürün koduna (urunkodu) bağlı olarak güncelleniyor. Nereden aktarıldığı belli olsun diyede urunler tablosunda "tedarikci" alınında tedarikçi ayrıca belirtiliyor. Sıkıntım bazen toptancı daha önce satışa sunduğu ürünü tedarik edemediği için listeden çıkartıyor olması. Nasıl bir sql kodu yazmalıyım ki tedarikçiden gelen tablo ile urunler tablosunu tedarikci alınana göre karşılaştırsın ve fazla olan ürünler silinsin.
İki tablodaki farklı kayıtları bulma
6
●535
- 10-10-2013, 12:27:27Aynen öyle. Extra tek bir durum var. Urunler tablosunda 100 değil 300 ürün var diyelim. Bu üçyüz ürünün 100 tanesi "x" tedarikçisinden gelme ve bu tedarikçi hanesinde eklenirken otomatik olarak "x" olarak belirtilmiş durumda. 300 üründen x tedarikçisine ait 100 ürünü bulup bugünkülerle karşılaştıracak ve listeden çıkarılmış 10 ürünü bulacak kod lazım bana.zinan adlı üyeden alıntı: mesajı görüntüle
- 10-10-2013, 16:36:37şimdi burda yalın SQL tek başına yetmez çünkü bugün gelen veri henüz herhangi bir tabloya kayıt edilmedi. daha kayıt esnasında bu kontrolü yapabilirsin bu sefer de gelen kayıtlar arasında silinecek olanlar olmadığı için yine işlem devam eder. bence en basit yol olarak geçici tablo gibi gözüküyor. bugün gelen kayıtları bir geçici tabloya atarsın misal urunler_temp, daha sonra ürünler tablondakilerle karşılaştırırsın. delete from urunler u where u.urunno not exists (select ut.urunno from urunler_temp ut)
- 10-10-2013, 17:47:23Hızlı çözüm olması adına yükü SQLe atmak istedim. İlk fırsatta verdiğin kodu deneyip sonucu yazacağım. Olmadı dediğin gibi farklı çözümlere bakacağız artık.zinan adlı üyeden alıntı: mesajı görüntüle
Çok sağol yardımların için.